【问题标题】:Convert Json to array Angular2 js with type script使用打字稿将 Json 转换为数组 Angular 2 js
【发布时间】:2017-01-12 18:07:03
【问题描述】:

我有想要转换为具有指定键的数组的 json 数据。

[
  {"id":1,"url": "http://test.com"},
  {"id":2,"url":"https://ad.com/"},
  {"id":3,"url":"https://ad12.com/"},
  {"id":4,"url":"https://ad12.com/"}
]

代码:

 http.get('', { headers: ''})
     .map(var response => response.json();
     return response.map(d => {
     return new class(d.url);
    }););

我只需要 url 键值。

Output:`["http://test.com", "http://ad.com", "http://ad12.com"]

`

【问题讨论】:

  • 好吧,为什么不把它放在模型中并在上面应用地图呢?
  • 我试过了,但没能实现。
  • 请显示您尝试过的内容。
  • @echonax 我已经尝试过上面提到的代码。

标签: javascript json angular typescript


【解决方案1】:

应该是:

http.get('', { headers: ''})
    .map(response => {
        return response.json().map(d => {
            return new class(d.url);
        });
    });

【讨论】:

    【解决方案2】:

    如果使用 lodash 则 ..

    var urls = _.map(yourArray, 'url');
    

    或者 ES6 和 lodash ..

    let urls = _.map(yourArray, 'url');
    

    或者 ES6 并且没有 lodash ..

    lets urls = yourArray.map((obj) => {
        return obj.url;
    });
    

    或者 ES5 并且没有 lodash ..

    lets urls = yourArray.map(function (obj) {
        return obj.url;
    });
    

    【讨论】:

    • 更惯用的 ES6 应该是 map(({url}) => url)
    猜你喜欢
    • 2017-12-22
    • 2020-12-27
    • 2018-06-14
    • 2018-04-26
    • 2021-12-19
    • 2016-09-10
    • 2018-09-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多