String类有大量的方法。以下列举几个常用的
1.CharAt()
var oString = new String("lenovo");
alert(oString.charAt(1)); //output "e"
2.CharCodeAt()
var oString = new String("lenovo");
alert(oString.charCodeAt(1)); //output "101"
这里得到的是字符代码,e对应的是101。
3.concat()
用于把一个或者多个字符串连接到String对象的原始值上,返回的是连接后的字符串,但是原始的字符串对象将不发生改变
var oString = new String("hello");
var oConcatString = oString.concat(" lenovo");
alert(oString); //output "hello";
alert(oConcatString); //output "hello lenovo";
3.indexOf() 和 lastIndexOf()
如果要找某个字符串中是否存在某个字符,就要使用indexOf()方法
这两个方法的不同是indexOf()方法是从字符串的开头开始寻找,而lastIndexOf()方法是从字符串的结尾开始寻找。
var serchString = new String("hello lenovo");
alert(serchString.indexOf("o"); //output 4;
alert(serchString.lastIndexOf("o"); //output 10;
4.localeCompare()
这个方法对字符串值进行排序,该方法的参数是一个要进行比较的字符串。代码说明:var oString = new String("ygz");
alert(ostring.localeCompare("block"); //output 1,以为z在b的后面 alert(oString.localeCompare("yero"); //output 0,因为同是z alert(oString.localeCompare("zgz"); //output -1,因为y在z的前面
需要说明的是:localeCompare()方法是区分字母大小写的,大写字母在顺序上要排在小写字母之后。
5.slice()和substring()
方法命名如果是简写了,就全部是小写,如果是完整的,就会是第二个单词大写。(题外话)
这两个方法都是截取字符串的,但是和concat()方法一样,只返回操作后的字符串,而不影响原来的字符串
如果参数都是正数,那么这两个方法的表现一样
var oString = new String("hello lenovo"); alert(oString.slice(3)); //output "lo lenovo" 从第三个位置截取到最后 alert(oString.slice(3,7)); //output "lo l" 从第三个位置截取到第七个位置 alert(oString.substring(3)); // output same as top; alert(oString.substring(3,7)); // output same as top
如果是负数,则substring()方法将把负数看作0来处理。代码如下:
var oString = new String("hello lenovo"); alert(oString.slice(-3)); //output "ovo" alert(oString.substring(-3)); //output "hello lenovo" alert(oString.slice(3,-4)); //output "lo le" alert(oSTring.substring(3,-4)); //output "hel"
6.toLowerCase(),toLocaleLowerCase() 和 toUpperCase(),toLocaleUpperCase()
前两者是把字符串转换为小写字母,后两者是把字符串转换为大写字母。
locale是区域字样的意思,一般情况下不必区分。