javaScript中的String

String类型


String类型是字符串的对象包装类型,它的定义和之前讲过的Boolean、Number类型一样:
var stringObject = new String("hello world");

String类型都有一个length属性,它可以返回当前字符串拥有的字符个数:
alert(stringObject.length); //11
这里强调一下中文的问题,即使字符串中包含双字节字符,每个字符也仍然算一个字符;
var string = new String("世界,你好");
alert(string.length); //5



一、字符方法


String类型定义了两个访问指定位置字符的方法:charAt()和charCodeAt()。其中,charAt()方法返回的是指定位置的字符,而charCodeAt()方法返回的是指定位置字符的编码。注意:它们的起始位置都是从0开始的。
alert(stringObject.charAt(1)); //e
alert(stringObject.charCodeAt(1));  //101



二、字符串操作方法


concat()方法用于将一或多个字符串拼接起来,返回拼接后的新字符串:
var string1 = "hello";
var result = string1.concat(" world");
alert(result); //"hello world"
concat()方法也可以传入多个参数,但实际中使用“+”号来完成字符串拼接的更多一些。


slice()、substr()和substring()方法是基于子字符串创建新字符串的方法,它们都会返回被操作字符串的子字符串。
alert(stringObject.slice(3)); //lo world
alert(stringObject.substring(3)); //lo world
alert(stringObject.substr(3)); //lo world
alert(stringObject.slice(3,7)); //lo w
alert(stringObject.substring(3,7)); //lo w
alert(stringObject.substr(3,7)); //lo worl
它们都可以接收一或两个参数,第一个参数表示开始的位置。slice()和substring()的第二个参数表示结束的位置(不包括该位置上的字符);substr()的第二个参数表示子字符串的长度。




三、字符串位置方法


indexOf()和lastIndexOf()方法都是从一个字符串中搜索给定的子字符串,然后返回子字符串的位置(如果没有匹配到,就返回-1)。indexOf()和lastIndexOf()方法的区别在于,indexOf()方法是从头开始搜索的;而lastIndexOf()方法是从末尾开始搜索的。
alert(stringObject.indexOf("o")); //4
alert(stringObject.lastIndexOf("o")); //7
这两个方法都可以接收可选的第二个参数,笫二个参数表示将从指定位置开始搜索。
alert(stringObject.indexOf("o",6)); //7
alert(stringObject.lastIndexOf("o",6)); //4




四、字符串大小写转换方法


toUpperCase()方法可以将字符串中的小写转成大写,而toLowerCase()方法正好相反。
alert(stringObject.toUpperCase()); //HELLO WORLD
alert(stringObject.toLowerCase()); //hello world




五、字符串的模式匹配方法


match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
alert(stringObject.match("world")); //world
var str="1 plus 2 equal 3"
alert(str.match(/\d+/g)); //1,2,3(数组)
match() 方法将检索字符串 stringObject,以找到一个或多个与 regexp 匹配的文本。这个方法的行为在很大程度上有赖于 regexp 是否具有标志 g。
在全局检索模式下,match() 即不提供与子表达式匹配的文本的信息,也不声明每个匹配子串的位置。如果您需要这些全局检索的信息,可以使用 RegExp.exec()。


replace()方法可以将字符串中指定的字符替换成给定字符。第一个参数可以是字符串也可以是RegExp对象。第二个参数可以是字符串也可以是一个函数。




六、localeCompare()方法


localeCompare()方法用来比较两个字符串,返回结果分为下列三种情况:
1、如果字符串在字母表中应该排在字符串参数之前,则返回一个负数(一般为-1)。
2、如果字符串等于字符串参数,则返回0.
3、如果字符串在字母表中应该排在字符串参数之后,则返回一个正数(一般为1)。

猜你喜欢

转载自blog.csdn.net/hpljava/article/details/78911489