需求:
const list = [
{misId: 'e', name: '小白'},
{misId: 'e', name: '小白白'},
{misId: 'r', name: '小王'},
{misId: 'r', name: '小小王'}
]
let currKey = 'r'
查找数组list中,是否有包含与当前currKey的值不一样的misId
解决:
要查找数组list
中是否存在与当前currKey
值不一样的misId
,可以使用Array.prototype.some
方法。some
方法会测试数组中的元素是否至少有一个满足提供的函数实现的测试。
javascript
const list = [
{misId: 'e', name: '小白'},
{misId: 'e', name: '小白白'},
{misId: 'r', name: '小王'},
{misId: 'r', name: '小小王'}
];
let currKey = 'r';
// 使用some方法检查数组中是否有与currKey值不一样的misId
let hasDifferentMisId = list.some(item => item.misId !== currKey);
console.log(hasDifferentMisId); // 如果有,输出true,否则输出false
在这段代码中,some
方法遍历数组list
,并为每个元素调用提供的函数。如果函数返回true
,则some
方法会立即返回true
,表示找到了与currKey
值不一样的misId
。如果遍历完所有元素都没有找到,some
方法会返回false
,表示所有元素的misId
都与currKey
相等。