javascript - 如何使用 underscore.js 生成扁平化结果

标签 javascript json underscore.js

json对象是

var data = [{"Parent":1,"Child":[4,5,6]},{"Parent":2},{"Parent":3}]

如何使用 underscore.js chain/map/pluck 等函数来获得扁平化结果

     var result = [];
for (var i = 0; i < data.length; i++) {
    result.push(data[i].Parent);
    if (data.Child != undefined) {
        for (var j = 0; j < data[i].Child.length; j++) {
            result.push(data[i].Child[j]);
        }
    }
}
console.log(result) >> //1,4,5,6,2,3

最佳答案

这是一个更简短的解决方案:

flat = _.flatten(_.map(data, _.values)) 

关于javascript - 如何使用 underscore.js 生成扁平化结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8786417/

相关文章:

shell - 终端 : CURL | walk to JsonPath | prettyprint JSON

javascript - 使用 _.each() 将两个集合的结果修改为数组

javascript - Ion slider - onFinish 在页面加载时被触发(不是由于用户对 slider 的操作)

ruby-on-rails - rails 3.2.0 仅当它是 json 格式时才在过滤器之前跳过

javascript - 我可以覆盖/重新定义 "global"Javascript 函数,如 confirm() 和 alert() 吗?

json - 在 Swift 中保存 http 请求的响应

backbone.js - 如何将所有模板放在不同的 HTML 文件中,如 "AppTmpl.html"以及如何访问主干中的这些模板?

javascript - 字符串到整数的转换速度快还是反之亦然

javascript - 谷歌图表和谷歌表格不同时显示

javascript - 在 React 中使用泛型键入 defaultProp 箭头函数方法