2013-02-15 40 views
1

任何人都可以解釋爲什麼我無法正確確定原型散列的大小。散列表顯示爲在控制檯中填充,但大小爲0

下面打印出klass {_object: Object, test: "foo", each: function, eachSlice: function, all: function…},證明「測試」對肯定是增加的。但尺寸打印爲0.

this.state = new Hash(); 

this.state["test"] = "foo"; 

console.log(this.state.size()); 
console.log(this.state); 

回答

4

這是因爲您只是將一個普通屬性添加到Hash實例。您需要實際上是一個元素添加到哈希,與.set()方法:

this.state.set("test", "foo"); 

這裏有一個working example

0

您也可以像這樣初始化散列中的數據。

var state = $H({'test':'foo','moretest':'bar'}); 

console.log(state.size()); // returns 2 
console.log(state.get('moretest')); returns bar