所以我有一個數組JSON的myarr[]
形式對象:{ "a":"", "b":"" }
操縱JSON數據集
是否有獲得B的陣列有效的方法:
[ myarr[0].b, myarr[1].b, myarr[2].b, ... ]
還是我必須要手動迭代通過myarr
來構建數組b?
所以我有一個數組JSON的myarr[]
形式對象:{ "a":"", "b":"" }
操縱JSON數據集
是否有獲得B的陣列有效的方法:
[ myarr[0].b, myarr[1].b, myarr[2].b, ... ]
還是我必須要手動迭代通過myarr
來構建數組b?
爲什麼不能有樂趣的原型和擴展陣列,以獲得一個方便的和可重複使用的功能:
Array.prototype.pluck = function(key) {
var i = this.length,
plucked = [];
while(i --) {
plucked[i] = this[i][key] || ""
}
return plucked;
}
有了這一個,你可以這樣做:
collection.pluck(keyName)
要拿回你想要的結果。點擊這裏查看工作演示:http://jsfiddle.net/jYrNN/1/
爲什麼'|| 「」'?只要讓結果成爲「未定義」即可。 – Bergi 2014-02-27 18:22:25
jQuery也提供API來解析JSON
$.each(myarr, function(key,value)
{
alert(key);
alert(value);
});
他也不需要解析JSON,也不使用該方法。 – Bergi 2013-05-13 18:53:22
您將不得不遍歷數組,但是有幫助函數可以簡化使用。 – Bergi 2013-05-13 18:54:27
@Bergi那些幫手是什麼? – HPWD 2014-02-27 18:19:31
@dlackey:[pluck](http://underscorejs.org/#pluck)例如在答案中建議(並重新實施)。 – Bergi 2014-02-27 18:21:43