【发布时间】:2018-12-18 07:40:25
【问题描述】:
在下面的代码中his._notifications是一个对象数组,每个对象都包含如下所示的属性。
我要做的是检查传递给函数func() 的每个对象not是否被推入数组?
所以我使用.find(),如果对象被传递给函数或者它已经存在于数组中,我希望它返回true,否则返回false。
但下面的日志语句打印undefined!为什么isExists 未定义?以及在数组中检查项目是否重复的推荐方法是什么?
代码:
func(noti)
const isExists = this._notifications.find((obj) =>
obj.title === noti.safeTitle
&& obj.text === noti.safeText
&& obj.bannerTitle === noti.safeBannerTitle
&& obj.bannerText === noti.safeBannerText
&& obj.icon === noti.icon
&& obj.onClickCallback === noti.onClickCallback
&& obj.eNotificationType === noti.notificationType
&& obj.deleteable === noti.deletable
&& obj.withBanner === noti.withBanner
);
logger.info('[isNotificationExists] For the current notification: ', JSON.stringify(notification), ' isExists: ', isExists);
【问题讨论】:
-
@ArifKhan 与对象比较无关
标签: javascript arrays node.js