【问题标题】:Adding {} to map breaks it [duplicate]将 {} 添加到地图会破坏它[重复]
【发布时间】:2021-10-30 12:28:05
【问题描述】:

为什么会这样:

const final = pdata.map((p) => p.nodeName);

// returns [ 'H1', 'P', 'P' ] like its supposed to

但这在所有这些中都返回未定义:

const final = pdata.map((p) => { 
  p.nodeName
});

// returns [ undefined, undefined, undefined ]

我需要在里面添加几个 if 语句来检查不同的类型,但 {} 似乎打破了它。我不应该在.map() 中这样做吗?还是有其他方法可以做到这一点?

【问题讨论】:

    标签: javascript node.js ecmascript-6


    【解决方案1】:

    {...}的用法是封装多条语句。

    您需要指定return关键字:

    const final = pdata.map((p) => { 
      return p.nodeName;
    });
    

    【讨论】:

    • 请只投票关闭作为重复而不是回答。
    猜你喜欢
    • 2019-10-26
    • 2020-06-18
    • 1970-01-01
    • 2020-05-23
    • 2016-01-22
    • 1970-01-01
    • 1970-01-01
    • 2013-03-08
    • 2014-09-10
    相关资源
    最近更新 更多