如果输入为空,我如何使检查重复的函数返回false ?

How can I make a function that checks for duplicates return false if the input is null?

本文关键字:函数 返回 false 检查 何使 输入 如果      更新时间:2023-09-26

我使用以下代码检查是否有重复:

        var duplicate = _.some(this.home.modal.data.subTopics, function (subTopic) {
            return subtopic.subTopicId === this.home.modal.subTopicId;
        });

检查home.modal.data.subTopics中每一行的subTopicId,看是否有匹配this.home.modal.subTopicId的值。

然而,我有一个问题,如果this.home.modal.subTopicId是null,它给出了一个错误。

我怎么能改变它,使它永远不会显示一个重复,如果this.home.modal.subTopicId是空的?理想情况下,我想改变它在代码的返回区域,但我不确定我怎么能做到这一点。

也许就像:

var current = this.home.modal.subTopicId;
var duplicate = current && _.some(this.home.modal.data.subTopics, function (subTopicId) {
    return subTopicId === current;  // can't use outer `this` here..
});