includes()
方法是JavaScript中的一个字符串方法,用于检查一个字符串是否包含另一个指定的字符串。如果包含,返回true
,否则返回false
。
使用方法如下:
str.includes(searchString[, position])
参数说明:
searchString
:要搜索的字符串。position
(可选):从当前字符串的哪个位置开始搜索,默认为0。
示例:
const str = "Hello, world!";
console.log(str.includes("world")); // 输出:true
console.log(str.includes("World")); // 输出:false
console.log(str.includes("lo", 3)); // 输出:true
console.log(str.includes("lo", 6)); // 输出:false
includes() 方法在比较对象时使用的是严格相等运算符(===),而不是按对象属性逐个匹配的方式。
如果想要检查数组中是否包含某个对象,可以使用 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
细节方面:
- includes() 方法适用于字符串和数组类型。
- 它可以快速判断目标对象中是否包含指定的元素。
- 在字符串中,它区分大小写,如果找到完全匹配的子串,返回 true;否则返回 false。
- 在数组中,它使用严格相等(===)来匹配元素,如果找到与搜索元素相等的元素,返回 true;否则返回 false。
- 可以通过第二个参数来设置搜索的起始位置或索引。
- includes() 方法在 ES6 中新增,不支持旧版本的浏览器,可以使用 polyfill 或转译工具进行兼容处理。