我有一个对象(可以说是“关联数组” - 也称为纯 JavaScript 对象):
obj = {} obj["Foo"] = "Bar" obj["bar"] = "Foo"
我想使用 CoffeeScript 进行迭代obj,如下所示:
obj
# CS for elem in obj
bu 上面的 CS 代码编译成 JS:
// JS for (i = 0, len = obj.length; i < len; i++)
在这种情况下不合适。
JavaScript 方式会是for(var key in obj),但现在我想知道:我 怎样才能在 CoffeeScript 中做到这一点?
for(var key in obj)
使用for x,y of L. 相关文件。
for x,y of L
ages = {} ages["jim"] = 12 ages["john"] = 7 for k,v of ages console.log k + " is " + v
输出
jim is 12 john is 7
您可能还想考虑for own k,v of agesAaron Dufour 在评论中提到的变体。这添加了一个检查以排除从原型继承的属性,这在本示例中可能不是问题,但如果您正在构建其他东西,则可能会出现问题。
for own k,v of ages