Javascript中includes函数
用处
用于数组和字符串,用于判断数组是否包含某个值。或者用于字符串是否包括某个子串。
如果找到该值或者字符串,则返回true,否则返回false
语法:
arr.includes(valueToFind[, fromIndex])
-
valueToFind
:必需。需要查找的元素值。 fromIndex
:可选。从该索引处开始查找valueToFind
。如果为负值,则按升序从array.length + fromIndex
的索引开始搜寻。即使整个数组已经被搜索,fromIndex
仍然会被当作有效位置。如果省略该参数,则整个数组都会被搜索。
用法一:判断数组是否有某个值
用法二:判断是否包含某个字符串
注意:include方法在进行数组比较的时候,是使用严格相等的方式(===)。其并不适用一个对象是否包括子对象。
下面的代码是错误的:
const users = [ { name: '叶天帝', age: 225 }, { name: '石昊', age: 130 }, { name: '辰南', age: 135 } ]; const user = { name: '石昊', age: 130 }; console.log(users.includes(user)); // false
可以使用some()方法进行代替。
const users = [ { name: '叶天帝', age: 225 }, { name: '石昊', age: 130 }, { name: '辰南', age: 135 } ]; const user = { name: '石昊', age: 130 }; const isUserIncluded = users.some(u => u.name === user.name && u.age === user.age); console.log(isUserIncluded); //true