JavaScript——字符串检索的5种方式

demo

let str3 = 'hello,word'
console.log('检索不到返回-1',str3.indexOf('a')); //检索不到返回-1
            
console.log(str3.lastIndexOf('e',5));//返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。
console.log('//检索不到返回-1',str3.lastIndexOf('o',2)); //检索不到返回-1
            
console.log(str3.includes('e',2)); // 第二个参数,查找的开始位置,默认为 0。检索不到返回false,检索到返回true
            
console.log(str3.startsWith('H')); // 检测字符串是否以指定的子字符串开始,对大小写敏感,检索不到返回false,检索到返回true
// console.log(str3.toLowerCase().startsWith('h')); //  避免因为大小写而查找错误的问题,可以把字符串转为小写用小写字母检索
console.log(str3.toUpperCase().startsWith('H')); // 避免因为大小写而查找错误的问题,可以把字符串转为大写用大写字母检索

 

  1.  str.indexOf('xx')
  2. str.lastIndexOf('xx')
  3. str.includes ('xx')
  4. str.startsWith('xx')

 

第5种:

arr.some() / arr.every()

定义和方法:

some() 方法用于检测数组中的元素是否满足指定条件(函数提供)。

some() 方法会依次执行数组的每个元素:

  • 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
  • 如果没有满足条件的元素,则返回false。

注意: some() 不会对空数组进行检测。

注意: some() 不会改变原始数组。

let arr1 = ["html","css","js"];
let str4 = "学习前端的顺序是先学html和css绘制页面";
            
let result = arr1.some(item=>{ 
  return str4.includes(item)
})
if(result){
  console.log('找到了关键词'); //遍历第一个元素,出现在str4里,后面的就不检索了,返回true
}else{
  console.log('没找到关键词');
}

 

posted @ 2020-10-07 14:31  小昱同学  阅读(1171)  评论(0编辑  收藏  举报