String
对字符串的支持可用性
JavaScript 1.0; JScript 1.0; ECMAScript v1
从…继承/覆盖
继承于 Object
构造函数
new String(s) // 构造函数 String(s) // 构造函数
参数
- s
-
要存储在String对象中或转换成原始字符串的值。
返回值
当String()与new运算符一起作为构造函数使用时,返回一个新创建的String对象,存放的是字符串s或s的字符串表示。当不用new运算符调用String()时,它只把s转换成原始的字符串,并返回转换后的值。
属性
- length
-
字符串中的字符数。
方法
- charAt( )
-
抽取字符串中指定位置处的字符。
- charCodeAt( )
-
返回字符串中指定位置处的字符编码。
- concat( )
-
把一个或多个值连接到字符串上。
- indexOf( )
-
在字符串中检索一个字符或一个子串。
- lastIndexOf( )
-
在字符串中向后检索一个字符或一个子串。
- match( )
-
用正则表达式执行模式匹配。
- replace( )
-
用正则表达式执行查找、替换操作。
- search( )
-
检索字符串中与正则表达式匹配的子串。
- slice( )
-
返回字符串的一个片段或一个子串。
- split( )
-
把字符串分割成一个字符串数组,在指定的分界字符处或正则表 达式处执行分割。
- substring( )
-
从字符串中抽取一个子串。
- substr( )
-
从字符串中抽取一个子串。该方法是substring()的一个变体。
- toLowerCase( )
-
将字符串中的所有字符都转换成小写的,然后返回一个副本。
- toString( )
-
返回原始的字符串值。
- toUpperCase( )
-
将字符串中的所有字符都转换成大写的,然后返回一个副本。
- valueOf( )
-
返回原始字符串值。
静态方法
- String.fromCharCode( )
-
用作为参数而传递的字符代码创建一个新的字符串。
HTML 方法
从JavaScript 1.0和JScript 1.0起,String类定义了许多方法,返回的字符串是把它放在HTML标记中修改后得到的。虽然ECMAScript没有标准化这些方法,但它们在客户端和服务器端动态生成HTML的脚本代码中非常有用。用这些非标准的方法,就可以为黑体的红色超链接创建常见HTML源代码,如下所示:
var s = "click here!"; var html = s.bold( ).link("javascript:alert('hello')").fontcolor("red");
因为这些方法没有被标准化,所以它们没有单独的参考页:
- anchor( name)
-
在<a name=>环境中返回字符串的一个副本。
- big( )
-
在<big>环境中返回字符串的一个副本。
- blink( )
-
在<blink>环境中返回字符串的一个副本。
- bold( )
-
在<b>环境中返回字符串的一个副本。
- fixed( )
-
在<tt>环境中返回字符串的一个副本。
- fontcolor( color)
-
在<font color=>环境中返回字符串的一个副本。
- fontsize( size)
-
在<font size=>环境中返回字符串的一个副本。
- italics( )
-
在<i>环境中返回字符串的一个副本。
- link( url)
-
在<a href=>环境中返回字符串的一个副本。
- small( )
-
在<small>环境中返回字符串的一个副本。
- strike( )
-
在<strike>环境中返回字符串的一个副本。
- sub( )
-
在<sub>环境中返回字符串的一个副本。
- sup( )
-
在<sup>环境中返回字符串的一个副本。
描述
字符串是JavaScript的一种基本数据类型。String类提供了操作原始字符串值的方法。 String对象的length属性声明了该字符串中的字符数。类String定义了大量操作字符串的方法, 例如从字符串中提取字符或子串,或者检索字符或子串。注意,JavaScript的字符串是不可变(immutable)的,String类定义的方法都不能改变字符串的内容。像String.toUpperCase()这样的方法,返回的是全新的字符串,而不是修改原始字符串。
在JavaScript 1.2及其后版本的Netscape实现中,字符串的行为就像只读的字符数组。 例如,从字符串s中提取第三个字符,可以用s[2]代替更加标准的s.charAt(2)。 此外,对字符串应用for/in循环时,它将枚举字符串中每个字符的数组下标(但要注意,ECMAScript标准规定,不能枚举length属性)。因为Netscape实现中的字符 串的数组行为不标准,所以应该避免使用它。