使用 lodash:检查现有对象数组和输入之间是否存在重复名称

Using lodash: check if duplicate names exist between existing array of objects and input

我想知道输入的名字是否已经存在于我的记录集中。

var recordset = [{
    firstName: 'John',
    lastName: 'Doe'
}, {
    firstName: 'Richard',
    lastName: 'Smith'
}];

var data = {
    firstName: 'John',
    lastName: 'Doe'
};

function checkDups(data, recordset) {
    var retVal = false;

    //loop through datum in recordset
    //check datum.firstName === data.firstName && datum.lastName === data.lastName
    // if true then retVal = true;
    // else repeat until end;

    return retVal;
};

预期结果应为真

您可以使用 _.some:

function checkDups(data, recordset) {
  return _.some(recordset, data);
}

var recordset = [{
    firstName: 'John',
    lastName: 'Doe'
}, {
    firstName: 'Richard',
    lastName: 'Smith'
}];

var data = {
    firstName: 'John',
    lastName: 'Doe'
};

function checkDups(data, recordset) {
    return _.some(recordset, data);
};

console.log(checkDups(data, recordset));
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.15.0/lodash.min.js"></script>