如何在JavaScript中檢查字符串是否包含子字符串

JavaScript提供了許多方法來檢查字符串是否包含子字符串。學習規範的方法,並使用普通的JavaScript找出所有可用的選項

在任何編程語言中,檢查字符串是否包含子字符串是最常見的任務之一。


JavaScript提供了執行此操作的不同方法。

最簡單的方法,以及隨後的規範方法,都在使用includes()字符串上的方法:

'a nice string'.includes('nice') //true

這種方法是在ES6 / ES2015

除Internet Explorer之外,所有現代瀏覽器均支持該功能:

Browser Support for includes

要在所有瀏覽器上使用它,請使用Polyfill.io或其他專用的polyfill。

includes()還接受可選的第二個參數,該整數表示開始搜索的位置:

'a nice string'.includes('nice') //true
'a nice string'.includes('nice', 3) //false
'a nice string'.includes('nice', 2) //true

ES6之前版本的include()替代品:indexOf()

在ES6之前,檢查字符串是否包含子字符串的常用方法是使用indexOf,這是一個字符串方法,如果該字符串不包含子字符串,則返回-1。如果找到了子字符串,它將返回以該字符串開頭的字符的索引。

喜歡includes(),第二個參數設置起點:

'a nice string'.indexOf('nice') !== -1 //true
'a nice string'.indexOf('nice', 3) !== -1 //false
'a nice string'.indexOf('nice', 2) !== -1 //true

免費下載我的JavaScript初學者手冊


更多js教程: