1、str.length——获取字符串长度(字符串属性)
1 var str = ‘javascript‘; 2 str.length; // 10
2、str.charAt(index)——返回字符串的第index个字符,index取值范围为0~str.length-1
1 var str = ‘JavaScript‘; 2 str.charAt(3); // ‘a‘ 3 str.charAt(10); // ‘‘
如果index不在范围内,则返回一个空字符串
3、str.indexOf(search,startIndex)——返回指定字符search在字符串中首次出现的位置,从startindex开始查找,如果不存在,则返回-1。第一个参数为要查找的字符,第二个参数为起始位置。
1 var str = ‘JavaScript‘; 2 str.indexOf(‘av‘); // 1 3 str.indexOf(‘av‘,2); // -1 4 str.indexOf(‘‘,11); // 10 5 str.indexOf(‘‘,8); // 8
使用该方法可以实现数组去重、统计一个字符串中某个字母出现的次数
1 var str = ‘To be, or not to be, that is the question.‘; 2 var count = 0; 3 var pos = str.indexOf(‘e‘); 4 5 while (pos !== -1) { 6 count++; 7 pos = str.indexOf(‘e‘, pos + 1); 8 } 9 10 console.log(count); // 4
4、str.lastIndexOf(search,startIndex)——从右往左开始找,找不到返回-1
5、str.substring(start,end)——截取字符串,返回从start到end(不包括)之间的字符,两个参数均为非负整数
1 var str = ‘JavaScript‘; 2 str.substring(0,4); // ‘Java‘ 3 str.substring(4,0); // ‘Java‘,start > end,执行效果相当于将两个参数调换 4 str.substring(4,4); // ‘‘,start == end,返回空字符串
6、str.slice()——截取字符串,返回从start到end(不包括)之间的字符,两个参数可为负整数
1 var str = ‘The morning is upon us!‘; 2 str.slice(4, -1); // ‘morning is upon us‘ 3 str.slice(1, 3); // ‘he‘
7、str.split(separator,limit)——字符串分割成数组,参数1指定字符串或正则,参数2指定数组的最大长度
1 var str = "Hello?World!"; 2 str.split(); // ["Hello?World!"] 3 str.split(‘‘); // ["H", "e", "l", "l", "o", "?", "W", "o", "r", "l", "d", "!"] 4 str.split(‘?‘); // ["Hello", "World!"] 5 str.split(‘‘,5); // ["H", "e", "l", "l", "o"]
8、str.replace(rgExp/substr,replaceText)——返回替换后的字符串
1 var str = "Apples are round, and apples are juicy."; 2 str.replace(‘apples‘,‘oranges‘); // "Apples are round, and oranges are juicy." 3 str.replace(/apples/gi, "oranges"); // "oranges are round, and oranges are juicy."
9、str.search(regexp)——查找str与正则是否匹配,如果匹配成功,则返回正则表达式在字符串中首次匹配项的索引;否则,返回 -1。
1 var str = ‘I love JavaScript!‘; 2 str.search(/java/); // -1 3 str.search(/Java/); // 7 4 str.search(/java/i); // 7 5 str.search(‘Java‘); // 7
10、str.match(regexp)——返回一个包含匹配结果的数组,如果没有匹配项,则返回 null。如果参数传入的是一个非正则表达式对象,则会使用 new RegExp(obj) 隐式地将其转换为正则表达式对象
1 var str = ‘Boy boy, Gay gay!‘; 2 str.match(/boy/); // ["boy"] 3 str.match(/gay/gi); // ["Gay", "gay"] 4 str.match(/lesbian/g); // null