【问题标题】:Simple method to return comma-separated values of object array返回对象数组的逗号分隔值的简单方法
【发布时间】:2015-12-30 18:21:01
【问题描述】:

我有一个看起来像这样的对象:

{
  "id": "123",
   "members": [
     { "id": 1, "name": "Andrew" },
     { "id": 2, "name": "Jim" }
   ]
}

我想要一个返回成员名称字符串的方法:"Andrew, Jim"

相对于遍历成员列表并将它们添加到数组中,有没有办法在一行中干净地完成此操作(可能是 underscore.js)?

【问题讨论】:

    标签: javascript arrays


    【解决方案1】:

    membersArrayObjects,首先您需要创建带有名称的Array - 对于这种情况,您可以使用.map,然后将此Array 转换为String - 这样做你可以使用.join

    var data = {
      "id": "123",
       "members": [
         { "id": 1, "name": "Andrew" },
         { "id": 2, "name": "Jim" }
       ]
    };
    
    var result = data.members.map(function (e) {
      return e.name;
    }).join(', ');
    
    console.log(result);

    【讨论】:

    • 根据我的要求给出准确答案。非常感谢。
    【解决方案2】:

    类似

    var arr = {
      "id": "123",
       "members": [
         { "id": 1, "name": "Andrew" },
         { "id": 2, "name": "Jim" }
       ]
    };
     console.log( arr.members.reduce( function(x,y){ return "\"" + x.name + "\", \"" + y.name + "\"" } ) );
    

    【讨论】:

      猜你喜欢
      • 2012-05-06
      • 1970-01-01
      • 1970-01-01
      • 2010-10-14
      • 2010-09-17
      • 2020-10-27
      • 2011-04-26
      • 2018-04-08
      • 1970-01-01
      相关资源
      最近更新 更多