所以我有一个数组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