json - javascript中提取元素
高洛峰
高洛峰 2017-04-11 11:08:24
[JavaScript讨论组]
{"topic1":{"609":["A","B"],"610":["C","D","E"]}}


在js中如何把609,610,A,B,C,D,E分别提取出来?
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(4)
PHP中文网
var obj = {"topic1":{"609":["A","B"],"610":["C","D","E"]}};
for(var p in obj.topic1) {
    console.log(p);  //获取到609、610
    var t = obj.topic1[p];
    for(var i = 0; i < t.length; i++){
        console.log(t[i]);  //获取A、B、C、D、E
    }
}
阿神

for...in... 遍历对象

伊谢尔伦

配合ES6做法就太多了;一句就够了

var v=Object.keys(data.topic1);v.forEach((a,b)=>{v.push(data.topic1[a])});
PHPz
let obj = {"topic1":{"609":["A","B"],"610":["C","D","E"]}};

function test(arg) {
  if (arg instanceof Array)
    return arg.reduce(
      (res, item) => res.concat(test(item)),
      []);
  else if (arg instanceof Object)
    return Object.keys(arg).reduce(
      (res, key) => res.concat([key], test(arg[key])),
      []);
  else
    return [arg];
}

test(obj.topic1);
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号