javascript - JavaScript 中的 Array.find() 链接

标签 javascript arrays

我正在养成根据上下文将我的一些 for 循环 转换为使用 array.find() 的习惯。在这样做时,我想知道是否有一种方法可以在 .find() 之后链接另一个运算符,以限制我从对象中获取的数量。

例如,请参阅以下内容:

currentStage = customerDoc.history.find(h => h.completed === false);
currentStageName = currentStage.name;

因为我真正想要的只是“currentStage.name”的值,有没有一种方法可以通过在我的 find() 之后链接来获取它,以指定我只想要这个属性(property)?如果没有,是否有另一种方法可以在一行中完成此操作?

最佳答案

是的,你可以喜欢这个,注意 || 的使用{} 以避免查找返回未定义时出现异常

currentStage = (customerDoc.history.find(h => h.completed === false) || {}).name

但在我看来,你应该像现在一样保留它,它可读且易于维护

currentStage = customerDoc.history.find(h => h.completed === false);
currentStageName = currentStage && currentStage.name;

关于javascript - JavaScript 中的 Array.find() 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57208673/

相关文章:

java - 如何在循环内创建一个数组,然后在Java中循环后调用它?

ios - Swift 字典将 [UInt8] 作为值不起作用

python - 如何从多维数组中提取一列?

javascript - $() 不是调用模态对话框谷歌地图调整大小的函数

javascript - 如何使代码在多个图像上工作 - HTML 和 CSS

javascript - ExtJs 在 ENTER 按键上模拟 TAB

python - 在 mysql 中存储 numpy 数组

javascript - 查询任意 html 元素,例如使用shinyjs查看它是否被禁用

javascript - 单击显示 div,其余背景模糊

C 程序增加传递的数组的每个元素