一、判斷某個(gè)字符串是否包含另一個(gè)字符串的五種方法
String對(duì)象的方法
方法一: indexOf()?? (推薦)
var str = "123"
console.log(str.indexOf("2") != -1); // true
?
indexOf() 方法可返回某個(gè)指定的字符串值在字符串中首次出現(xiàn)的位置。如果要檢索的字符串值沒有出現(xiàn),則該方法返回 -1。
方法二:match()
var str = "123"
var reg = RegExp(/3/);
if(str.match(reg)){
?//包含;
}
?
match() 方法可在字符串內(nèi)檢索指定的值,或找到一個(gè)或多個(gè)正則表達(dá)式的匹配。
方法三: search()
var str = "123"
console.log(str.search("2") != -1); // true
?
search() 方法用于檢索字符串中指定的子字符串,或檢索與正則表達(dá)式相匹配的子字符串。如果沒有找到任何匹配的子串,則返回 -1。
RegExp對(duì)象的方法
方法四: test()
var str = "123"
var reg = RegExp(/3/);
?console.log(reg.test(str) != -1); // true
?
test() 方法用于檢索字符串中指定的值。返回 true 或 false。
方法五:exec()
var str = "123"
var reg = RegExp(/3/);
if(reg.exec(str)){
?//包含;
}
?
exec() 方法用于檢索字符串中的正則表達(dá)式的匹配。返回一個(gè)數(shù)組,其中存放匹配的結(jié)果。如果未找到匹配,則返回值為 null。
二、javascript判斷數(shù)組是否包含
在 JavaScript 中,判斷數(shù)組是否包含某個(gè)元素是非常常見的操作。針對(duì)不同的需求,我們可以使用不同的方式來判斷一個(gè)數(shù)組是否包含某個(gè)元素。本文將介紹幾種常見的判斷方式。
方法一:使用 includes() 方法
在 ES6 中,為數(shù)組提供了一個(gè) includes() 方法,用于判斷數(shù)組是否包含某個(gè)元素。它的語法如下:
array.includes(searchElement[, fromIndex])
其中,searchElement 表示要查找的元素,fromIndex 表示搜索的起始位置,默認(rèn)值為 0。
includes() 方法返回一個(gè)布爾值,表示數(shù)組中是否包含指定的元素。
以下是使用 includes() 方法判斷數(shù)組是否包含某個(gè)元素的示例代碼:
const fruits = ['apple', 'banana', 'orange'];
console.log(fruits.includes('apple')); // true
console.log(fruits.includes('banana')); // true
console.log(fruits.includes('pear')); // false
?
方法二:使用 indexOf() 方法
如果你的代碼需要兼容 ES5 或更早的版本,那么可以使用 indexOf() 方法來判斷數(shù)組是否包含某個(gè)元素。它的語法如下:
array.indexOf(searchElement[, fromIndex])
其中,searchElement 表示要查找的元素,fromIndex 表示搜索的起始位置,默認(rèn)值為 0。
indexOf() 方法返回一個(gè)數(shù)字,表示數(shù)組中第一次出現(xiàn)指定元素的位置。如果數(shù)組中不包含該元素,則返回 -1。
以下是使用 indexOf() 方法判斷數(shù)組是否包含某個(gè)元素的示例代碼:
const fruits = ['apple', 'banana', 'orange'];
console.log(fruits.indexOf('apple') !== -1); // true
console.log(fruits.indexOf('banana') !== -1); // true
console.log(fruits.indexOf('pear') !== -1); // false
?
方法三:使用 find() 方法
ES6 中還提供了一個(gè) find() 方法,它可以用于獲取數(shù)組中符合條件的第一個(gè)元素。如果數(shù)組中不存在符合條件的元素,則返回 undefined。我們可以利用這一點(diǎn)來判斷數(shù)組是否包含某個(gè)元素。以下是使用 find() 方法判斷數(shù)組是否包含某個(gè)元素的示例代碼:
const fruits = ['apple', 'banana', 'orange'];
console.log(fruits.find(item => item === 'apple') !== undefined); // true
console.log(fruits.find(item => item === 'banana') !== undefined); // true
console.log(fruits.find(item => item === 'pear') !== undefined); // false
?
這里的 find() 方法使用了一個(gè)箭頭函數(shù),它接受一個(gè)參數(shù) item,表示數(shù)組中的每一個(gè)元素。箭頭函數(shù)的返回值為 item 是否等于要查找的元素,如果是則返回 true,否則返回 false。最終,find() 方法返回的是查找結(jié)果是否為 undefined,即是否存在符合條件的元素。
方法四:使用 some() 方法
與 find() 方法類似,ES6 中還提供了一個(gè) some() 方法,它可以用于判斷數(shù)組中是否存在符合條件的元素。如果數(shù)組中存在符合條件的元素,則返回 true,否則返回 false。以下是使用 some() 方法判斷數(shù)組是否包含某個(gè)元素的示例代碼:
const fruits = ['apple', 'banana', 'orange'];
console.log(fruits.some(item => item === 'apple')); // true
console.log(fruits.some(item => item === 'banana')); // true
console.log(fruits.some(item => item === 'pear')); // false
?
這里的 some() 方法使用了一個(gè)箭頭函數(shù),它接受一個(gè)參數(shù) item,表示數(shù)組中的每一個(gè)元素。箭頭函數(shù)的返回值為 item 是否等于要查找的元素,如果是則返回 true,否則返回 false。最終,some() 方法返回的是查找結(jié)果是否為 true,即是否存在符合條件的元素。
總結(jié)
本文介紹了幾種常見的方式來判斷數(shù)組是否包含某個(gè)元素,它們分別是:文章來源:http://www.zghlxwxcb.cn/news/detail-772234.html
- includes() 方法
- indexOf() 方法
- find() 方法
- some() 方法
你可以根據(jù)自己的需求來選擇其中一種方式。如果你使用的是 ES6 或以上的版本,建議使用 includes() 方法或 find() 方法,它們更加直觀和便捷;如果你需要兼容 ES5 或更早的版本,那么可以使用 indexOf() 方法或 some() 方法。文章來源地址http://www.zghlxwxcb.cn/news/detail-772234.html
到了這里,關(guān)于JS中判斷某個(gè)字符串、數(shù)組等是否包含某個(gè)值的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!