📅  最后修改于: 2023-12-03 15:31:41.532000             🧑  作者: Mango
在 JavaScript 中,我们经常需要检查一个数组或字符串是否包含某个特定的元素或子字符串。为了解决这个问题,JavaScript 提供了一些包含方法,它们能够帮助我们查找某个元素是否存在于数组或字符串中。
includes()
includes()
方法在 ES6 中引入,用于检查一个数组或字符串是否包含给定的值。它返回一个布尔值,如果包含则为 true
,否则为 false
。
arr.includes(searchElement, fromIndex)
参数说明:
searchElement
:要查找的元素或子字符串。fromIndex
(可选):从指定的索引位置开始查找。如果省略该参数,则从数组或字符串的开头开始查找。如果 fromIndex
为负数,则从数组或字符串的末尾开始往前查找。返回值:如果数组或字符串包含给定的值,返回 true
,否则返回 false
。
const arr = [1, 2, 3, 4, 5];
console.log(arr.includes(3)); // true
const str = "hello, world";
console.log(str.includes("hello")); // true
console.log(str.includes("world", 7)); // true,从第7个字符开始查找
console.log(str.includes("world", 8)); // false,从第8个字符开始查找,不包括这个位置的字符
indexOf()
indexOf()
方法用于搜索数组或字符串中的指定元素,并返回它的位置。如果找到了该元素,返回它在数组或字符串中的索引位置,否则返回 -1
。
arr.indexOf(searchElement, fromIndex)
参数说明:
searchElement
:要查找的元素或子字符串。fromIndex
(可选):从指定的索引位置开始查找。如果省略该参数,则从数组或字符串的开头开始查找。如果 fromIndex
为负数,则从数组或字符串的末尾开始往前查找。返回值:如果找到了指定的元素或子字符串,则返回它在数组或字符串中的索引位置;否则返回 -1
。
const arr = [1, 2, 3, 4, 5];
console.log(arr.indexOf(3)); // 2
const str = "hello, world";
console.log(str.indexOf("hello")); // 0
console.log(str.indexOf("world", 7)); // 7,从第7个字符开始查找
console.log(str.indexOf("world", 8)); // -1,从第8个字符开始查找,不包括这个位置的字符
lastIndexOf()
lastIndexOf()
方法与 indexOf()
方法类似,它在数组或字符串中从后往前查找元素或子字符串。如果找到了该元素,返回它在数组或字符串中的索引位置,否则返回 -1
。
arr.lastIndexOf(searchElement, fromIndex)
参数说明:
searchElement
:要查找的元素或子字符串。fromIndex
(可选):从指定的索引位置开始查找。如果省略该参数,则从数组或字符串的末尾开始查找。如果 fromIndex
为负数,则从数组或字符串的末尾开始往前查找。返回值:如果找到了指定的元素或子字符串,则返回它在数组或字符串中从后往前的索引位置;否则返回 -1
。
const arr = [1, 2, 3, 4, 5, 3];
console.log(arr.lastIndexOf(3)); // 5
const str = "hello, world";
console.log(str.lastIndexOf("o")); // 8
console.log(str.lastIndexOf("o", 7)); // 4,从第7个字符开始往前查找
console.log(str.lastIndexOf("o", 3)); // -1,从第3个字符开始往前查找,不包括这个位置的字符
以上就是 JavaScript 中的包含方法。它们能够帮助我们快速检查一个数组或字符串是否包含某个特定的元素或子字符串,并返回它的位置或布尔值。在开发中,我们可以根据实际情况来灵活使用它们。