【问题标题】:how to use find function and if-statement in JavaScript [closed]如何在 JavaScript 中使用 find 函数和 if 语句 [关闭]
【发布时间】:2021-10-27 22:15:19
【问题描述】:

我遇到了 if 语句无法正常工作的问题

const currentlyActive = response.data.find(
    e =>
      e.teamMemberEmail === firebase.auth().currentUser.email && e.isActive,
);

注意如果结果是假的,那么我会从currentlyActive: undefined得到关注

// My issue
 
if (currentlyActive._id !== 'undefined' || null) {
    console.log('hello')
}

console.log 给我一个错误:

undefined 不是一个对象(评估 'activeSearch._id')

但是,如果有来自 currentlyActive 的结果,那么我的 console.log 会显示 hello 消息。

如何修复错误信息:

undefined 不是一个对象(评估 'activeSearch._id')

currentlyActive没有结果时?

【问题讨论】:

  • Array.prototype.find() 如果未找到匹配项,则返回 undefined
  • 你希望if (currentlyActive._id !== 'undefined' || null) 做什么,确切地说?因为它几乎可以肯定不是它实际会做的事情。
  • 保持基本。如果它的 undefined 或 null 只是 console.log('no data') 并且如果有不同的值然后 console.log('some data here')

标签: javascript undefined


【解决方案1】:

使用optional chaining

  if (currentlyActive?._id) {
      console.log('hello')
  }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-20
    • 1970-01-01
    • 2020-08-31
    • 2016-03-23
    • 2019-07-03
    • 1970-01-01
    • 2013-12-28
    相关资源
    最近更新 更多