📌  相关文章
📜  检查属性是否在数组 javascript 中具有值(1)

📅  最后修改于: 2023-12-03 14:55:46.185000             🧑  作者: Mango

检查属性是否在数组 JavaScript 中具有值

在 JavaScript 中,您可以使用Array.includes()方法来检查属性是否在数组中具有值。

使用Array.includes()方法

Array.includes()方法用于确定数组是否包含一个指定的值,返回的是Boolean值。

const array1 = [1, 2, 3];

console.log(array1.includes(2));
// expected output: true

const pets = ['cat', 'dog', 'bat'];

console.log(pets.includes('cat'));
// expected output: true

console.log(pets.includes('at'));
// expected output: false

语法

arr.includes(searchElement[, fromIndex])
  • searchElement:要搜索的值。
  • fromIndex:开始搜索的位置。如果省略,则默认从0开始搜索。
    • 如果从下标 n 开始搜索,则会从 n + 1 开始搜索。
判断对象属性是否在数组中具有值

如果您要检查对象属性是否在数组中具有值,则可以使用Array.some()方法。

const fruits = [
  {name: 'apple', count: 2},
  {name: 'banana', count: 0},
  {name: 'cherry', count: 5},
];

const isCherryInArray = fruits.some(fruit => fruit.name === 'cherry');

console.log(isCherryInArray);
// expected output: true

const isGrapeInArray = fruits.some(fruit => fruit.name === 'grape');

console.log(isGrapeInArray);
// expected output: false

语法

arr.some(callback[, thisArg])
  • callback:要调用的函数,用于测试数组中的每个元素。返回true表示元素符合测试条件。
  • thisArg:可选参数,执行callback时使用的this值。

在这个例子中,callback参数是一个箭头函数,它接受一个名为fruits的数组并用它的name属性测试每个元素是否与'cherry'相等。some()方法会在每次迭代中调用此函数直到返回true,表示测试通过。

总结

Array.includes()方法用于确定数组是否包含一个指定的值,并返回Boolean值。如果属性是一个对象,则可以使用Array.some()方法对属性进行测试。