Coffeescript,数组长度未定义

时间:2013-04-01 08:17:06

标签: arrays coffeescript

有人能解释为什么长度总是空的吗?

jsCountries = 
  0:
    country: "Brazil"
    photo:  "source.png"


alert jsCountries.length

2 个答案:

答案 0 :(得分:8)

我不确切地知道你想做什么。如果你想使用你的代码而不是访问

Object.keys(jsCountries).length

但是,如果您打算创建一个国家/地区对象数组,而不是建议您以不同方式初始化jsCountries var

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

以下内容将起作用

jsCountries.length

无论如何,我强烈建议即使你可能也不要使用数字键。

答案 1 :(得分:6)

您正在声明一个对象,其中设置了属性0,而不是数组。

你想:

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

alert jsCountries.length