我的json字符串如下:
var data = [{"first":"3","second":"1"},{"first":"5","second":"5"},{"first":"7","second":"1"}];
现在我打电话-
objx(data).collect("first")
并期望得到一个像 [3,5,7] 这样的数组。 但我收到 javascript 错误:对象不支持此属性或方法。 我试过
objx(data).collect("first").obj() but with no avail.
我已经包含了来自 http://code.google.com/p/objx/ 的 objx-2.3.6.js 文件我想用 objx api 创建数组以减少代码行数。 我正在使用 IE8
请提出出路。
最佳答案
“我的 json 字符串” - 这既不是 JSON 也不是字符串。无论如何...
因为你已经用 jQuery 标记了你的问题(即使你没有在你的问题中任何地方提到它)这里是一个针对相同问题的 jQuery 解决方案:
var fields = $.map(data, function(val) { return val.field; });
// fields is [3,5,7]
至于为什么会出现特定错误,那是因为 .collect()
方法不是核心 objx 库的一部分,至少,它不在objx-2.3.6.js
。大概您还需要包含 Collections 插件 js(但我找不到它)。
关于javascript - 如何通过objx的collect()方法创建json字符串特定字段的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9407563/