常见的几种字符串处理方法:
1.'字符串'.length 返回字符串的长度,length是字符串的属性;
eg:
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; var sln = txt.length;
2.indexOf() 返回字符串中指定文本第一次出现的索引,indexOf()是一种方法。(就算有多个相同的文本也只返回第一次出现的位置取得是查找文本的开始位置,字符串中没有指定文本的话返回-1),括号内可以填写两位参数,参数一是指定字符串,参数二位开始查找的起始位置。
eg:
var str = "The full name of China is the People's Republic of China."; var pos = str.indexOf("China");
3.lastIndexOf()于indexOf()方法一样也是返回指定文本出现的索引,但是根据字面意思也能知道他是返回字符串中最后一次出现指文本位置的方法,他的两个参数与indexOf()相同。
eg:
var str = "The full name of China is the People's Republic of China."; var pos = str.lastIndexOf("China", 50);
4.search()方法搜索指定文本并返回第一次出现位置的方法,听着跟indexOf()方法一样,但是他与IndexOf()的方法区别是:
①search()方法没有第二个设置起始位置的参数。
②indexOf() 方法无法设置更强大的搜索值(正则表达式)。
5.slice()方法是提取字符串某一部分的,就像切片一样,取字符串中你想要的部分,返回你想要部分的一个新字符串。
该方法有两个参数,参数一切片的起始位置,参数二切片的结束位置。如果某个参数为负,则从字符串的结尾开始计数。
eg:
var str = "Apple, Banana, Mango"; var res = str.slice(7,13);
res='Banana'
6.substring() 方法与slice()几乎一致唯一的区别就是substring()方法里的参数接受负值。
7.substr()方法也事切取字符串,第一个参数也是切取字符串的开始位置,第二个参数是切取字符串的长度。如果省略第二个参数,则该 substr() 将裁剪字符串的剩余部分。如果首个参数为负,则从字符串的结尾计算位置。第二个参数不能为负,因为它定义的是长度。
eg:
var str = "Apple, Banana, Mango"; var res = str.substr(7,6);
8.replace()方法作用是用另一个值替换在字符串中指定的值,replace() 方法不会改变调用它的字符串。它返回的是新字符串。默认地,replace() 对大小写敏感。因此不对匹配 MICROSOFT。默认地,只替换首个匹配
eg:
str = "Please visit Microsoft and Microsoft!"; var n = str.replace("Microsoft", "W3School");
如需执行大小写不敏感的替换,请使用正则表达式 /i(大小写不敏感):
str = "Please visit Microsoft!"; var n = str.replace(/MICROSOFT/i, "W3School");
如需替换所有匹配,请使用正则表达式的 g 标志(用于全局搜索):
str = "Please visit Microsoft and Microsoft!"; var n = str.replace(/Microsoft/g, "W3School");
9.concat()方法用于连接两个或者多个字符串,
eg: var text1 = "Hello"; var text2 = "World"; text3 = text1.concat(" ",text2);
concat() 方法可用于代替加运算符。下面两行是等效的:(个人还是觉得运用加法还是比较方便)
var text = "Hello" + " " + "World!"; var text = "Hello".concat(" ","World!");
10.trim() 方法删除字符串两端的空白符:
eg:
var str = " Hello World! "; alert(str.trim());
11.charAt() 方法返回字符串中指定下标(位置)的字符串:
eg:
var str = "HELLO WORLD"; str.charAt(0); // 返回 H
12.charCodeAt() 方法返回字符串中指定索引的字符 unicode 编码:(很少用到,了解就行)
eg:
var str = "HELLO WORLD"; str.charCodeAt(0); // 返回 72
13.split() 方法用于把一个字符串分割成字符串数组。有两个参数,第一个参数必需,字符串或正则表达式,从该参数指定的地方分割 ,第二个参数可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
eg:
<script type="text/javascript"> var str="How are you doing today?" document.write(str.split(" ") + "<br />") document.write(str.split("") + "<br />") document.write(str.split(" ",3)) </script>
输出:
How,are,you,doing,today? H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,? How,are,you
所有字符串方法都会返回新字符串。它们不会修改原始字符串。
正式地说:字符串是不可变的:字符串不能更改,只能替换。