配合这里的 方法 可以查询数组某一项是否符合要求
方法一:
str.indexOf()
语法: str.indexOf(item, start)
参数: 
  item: 查询的字符串值
  start: 可选的整数参数,规定在字符串中开始的位置, 他的合法值是 0 到 str.length-1 , 如果省略此参数,则会从字符串的首字符开始查询
var list = [
      { id: 1, str: '张三' },
      { id: 2, str: '李四' },
      { id: 3, str: '王五' },
      { id: 4, str: '赵六' },
      { id: 5, str: '沈七' },
      { id: 6, str: '账单' },
      { id: 7, str: '张挨打的' },
      { id: 8, str: '张三' },
      { id: 9, str: '张三' },
      { id: 10, str: '张三' },
    ]
    var a = list.filter(value => {
      return value.str.indexOf('四') !== -1
    })
    console.log(a); // { id: 2, str: '李四' },

注意: indexOf对大小写敏感
如果查询的字符串值没有出现, 则会返回 -1
 
方法二:
str.search()方法
语法: str.search(要查询的字符串)
参数: 该参数可以是需要在 stringObject 中检索的子串,也可以是需要检索的 RegExp(正则表达式) 对象。
注意: 如果没有找到任何匹配的子串,则返回 -1
 var list = [
      { id: 1, str: '张三' },
      { id: 2, str: '李四' },
      { id: 3, str: '王五' },
      { id: 4, str: '赵六' },
      { id: 5, str: '沈七' },
      { id: 6, str: '账单' },
      { id: 7, str: '张挨打的' },
      { id: 8, str: '张三' },
      { id: 9, str: '张三' },
      { id: 10, str: '张三' },
    ]
    var a = list.filter(value => {
      return value.str.search('四') !== -1
    })
    console.log(a); // { id: 2, str: '李四' },
 
 
 方法三:
str.match()方法
语法: str.match('value')
  str.match(regexp)
参数: 
 value:要查询的字符串
  regexp: 要匹配的正则表达式  
var str="1 plus 2 equal 3"
document.write(str.match(/\d+/g))

var str="Hello world!"
document.write(str.match("world"))
 
 charAr() 返回在指定位置的字符,索引范围为从 0 到 length() - 1。
 var str="abcdefghijklmn"
var str2 = str.charAt(2);
var str3 = str.charAt(8);
console.log(str2); //c
console.log(str3); //i

 

conca();连接字符串
var str1 = "hellow";
var str2 = 'world';
console.log(str2.concat(str1)); // 结果 worldhellow
 
 
 
match();在字符串内检索指定的值或找到一个或多个正则表达式的匹配,返回的是值而不是值的位置。
var str1 = "hellow";
var str2 = str1.match('ell'); //检索字符串,返回的是字符
var str3 = str1.match('lll');//没有指定的字符,返回的是null
console.log(str2);
console.log(str3);
 
 
 
.replace();替换匹配的字符串
var str1 = "nihaoma";
var str2 = "henhao";
var str3 = str1.replace(str1.match('hao'),str2.match('hen'));  //找到str1的hao,找到str2的lixi,用str2替换掉str1
console.log(str3); //nihenma

 

 
search();检索与字符串匹配的子串,返回的是地址
var str1 = "lily nihaoya zaiganma";
var str2 = "nihaoya";
var str3 = "wobuzai";
var num1 = str1.search(str2);//返回的是第一个字符所在的位置
var num2 = str1.search(str3); //未检测到返回-1
console.log(num1); //9
console.log(num2); //-1
 
 
slice();提取字符串片段,并在新的字符串中返回被提取的部分
var str1 = 'nihaoya wobuhaoya'
console.log(str1.slice(4,9)); //4位置开始,到9的前一个位置结束
console.log(str1.slice(2,14));//start位置开始,end前一个位置结束
console.log(str1);//原字符串不变
console.log(str1.slice(-1,0)); //返回的是空字符串
console.log(str1.slice(30,100)); //长度超过字符串的长度,返回空字符串
console.log(str1.slice(-1,10));//返回的是空字符串
 
 
substr();从起始索引号提取字符串中指定书目的字符
var str = "jin tian shi 2019 nian zui hou yi tian"
var str3 = str.substr(3,19);//字符串中空格不占位置,从3开始,到19结束
console.log(str3); //  tian shi 2019 nian
 
subString();提取字符串中两个指定索引号之间的字符
var str = "jin tian shi 2019 nian zui hou yi tian"
var str3 = str.substring(3,19);//字符串中空格占位置,从3开始,到18结束
var str4 = str.substr(3,19);//空格不占位。从3开始到19结束
console.log(str4);  // tian shi 2019 nian
console.log('-------------');
console.log(str3); // tian shi 2019 n
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
判断字符串是否包含指定字符