所以我在表单中有一个JSON对象的数组myarr[]
:{ "a":"", "b":"" }
是否有获得b数组的有效方法:
[ myarr[0].b, myarr[1].b, myarr[2].b, ... ]
或者我是否必须手动迭代myarr
来构建b?
答案 0 :(得分:2)
答案 1 :(得分:1)
为什么不玩原型并扩展Array以获得方便和可重用的功能:
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/
答案 2 :(得分:1)
var b_arr = $.map(myarr, function(val, i) { return val.b; });
或没有jQuery
var b_arr = myarr.map(function(val) { return val.b })
.filter(function(n){return n || false});
答案 3 :(得分:-1)
jQuery确实提供了api来解析json
$.each(myarr, function(key,value)
{
alert(key);
alert(value);
});