Coffeescript,数组长度未定义

3
有谁能解释一下为什么长度总是为空?
jsCountries = 
  0:
    country: "Brazil"
    photo:  "source.png"


alert jsCountries.length
2个回答

9

我不确定你想要做什么。如果你想使用你的代码,那么访问权限会是:

Object.keys(jsCountries).length

如果您的意图是创建一个国家对象数组,我建议您以不同的方式初始化jsCountries变量。

jsCountries = [
   {country: "Brazil", photo:  "source.png"},
   {country: "Argentina", photo:  "aregentina_source.png"},
   ...
]

以下任何一个都可以工作。
jsCountries.length

无论如何,我强烈建议不要为对象使用数字键,尽管这是可能的。


谢谢你的帮助。我已经使用了finally:jsCountries = [ { country: "阿尔巴尼亚", photo: "svg.png" } ] - Eusthace

6

你正在声明一个拥有属性0的对象,而不是一个数组。

你需要:

jsCountries = [
  country: "Brazil"
  photo:  "source.png"
]

alert jsCountries.length

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接