【问题标题】:Get array data from an object从对象中获取数组数据
【发布时间】:2018-01-24 02:37:28
【问题描述】:

我在一个对象中有一个数组,如下所示:

[
{ "id": 244, "title": "myBook.pdf", "author": "Kevin"},
{ "id": 370, "title": "Bookpress.pdf", "author": "Justin"},
{ "id": 433, "title": "Uptown.pdf", "author": "David"},
]

如何获取所有标题数据的所有数据?所需资料为: myBook.pdf、Bookpress.pdf、Uptown.pdf

【问题讨论】:

标签: javascript arrays object pdf


【解决方案1】:

如果你使用 lodash,你可以简单地这样做

var data = [
  { "id": 244, "title": "myBook.pdf", "author": "Kevin"},
  { "id": 370, "title": "Bookpress.pdf", "author": "Justin"},
  { "id": 433, "title": "Uptown.pdf", "author": "David"},
]

var result = _(data).map("title").value();

给你

result
(3) ["myBook.pdf", "Bookpress.pdf", "Uptown.pdf"]

但是由于这听起来像是一个作业问题,所以您应该尝试在没有库的情况下自己完成。

【讨论】:

    【解决方案2】:

    只需使用Array#map函数。使用join(',')函数来应用逗号

    var arr = [
    { "id": 244, "title": "myBook.pdf", "author": "Kevin"},
    { "id": 370, "title": "Bookpress.pdf", "author": "Justin"},
    { "id": 433, "title": "Uptown.pdf", "author": "David"},
    ]
    
    console.log(arr.map(a=> a.title))
    console.log(arr.map(a=> a.title).join(','))

    【讨论】:

      【解决方案3】:

      使用 for 循环遍历数组并使用 javascript 对象表示法获取所需的对象属性并将其附加到 html 或以您喜欢的任何方式使用。

      var arr =[
      { "id": 244, "title": "myBook.pdf", "author": "Kevin"},
      { "id": 370, "title": "Bookpress.pdf", "author": "Justin"},
      { "id": 433, "title": "Uptown.pdf", "author": "David"},
      ]
      
      for (var i =0;i < arr.length;i++){
      
      var el = document.getElementById("demo");
      el.innerHTML += arr[i].title
      }
      <div id="demo">
      </div>

      【讨论】:

        猜你喜欢
        • 2017-10-06
        • 2021-09-14
        • 2014-05-04
        • 2016-01-13
        • 1970-01-01
        • 2019-01-06
        • 2013-04-09
        • 2017-08-05
        • 1970-01-01
        相关资源
        最近更新 更多