javascript - 如何通过objx的collect()方法创建json字符串特定字段的数组

标签 javascript jquery

我的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/

相关文章:

javascript - 在 ng-include 中传递参数

javascript - 在 JavaScript 中使用正则表达式替换文本

javascript - Selenium : I would like to click on "OK button" on pop up which also has some input option to provide name

javascript - 为什么我的容器组件不能正确接收 Async Await 的结果?

jquery - 在 div 鼠标悬停时锁定主体滚动但保持位置

jquery - 将文本复制到带有所有换行符的文本区域

javascript - jquery ui 拖动缓动/惯性

javascript - express .静态: Cannot GET/

jquery - 对某些 ajax 调用禁用 BlockUI

javascript - 如何允许 DIV 的文本选择,但阻止父 DIV 的文本选择?