小编典典

从对象数组构造元素数组?

node.js

具有如下数据结构:

Items : [
    {
        title : 'One',
        value : 1,
    },
    {
        title : 'Two',
        value : 2,
    }
]

如何构造Items的标题数组?如[‘One’,’Two’]

如果 标题 == [] {。,则此代码集将生成“语法错误:意外的标识符” 。

app.get('/', function(req, res){
    var titles = [];
    for (var i=0, length=Items.length; i < length; i++) {
        if titles == [] {
            titles += Items[i]['title'];
        }
        else {
            titles = titles + ', ' + Items[i]['title'];
        }
        console.log(titles);
    };
  res.render('items', {
    itemTitles: titles
  });
});

阅读 212

收藏
2020-07-07

共1个答案

小编典典

我只会用Array.map新数组返回标题

var titles = Items.map(function(o) {
    return o.title;
});

小提琴

此外,该错误是由于缺少括号引起的

if titles == [] {  ...

应该

if (titles == []) {  ...

甚至更好

if (Array.isArray(titles) && titles.length === 0) {  ...
2020-07-07