对于JavaScript中的字符串,记住一句话:“字符串创建后不可修改”!
一、字符串创建后不可修改
var s = 'abcd'; s[1]='e'; console.log(s[1]); //'b' console.log(s); //'abcd'
二、常用方法
JavaScript 的字符串是不可变的(immutable),String 类定义的方法都不能改变字符串的内容,返回的是全新的字符串,而不是修改原始字符串。
名称 |
作用 |
示例 |
|
charAt() |
返回在指定位置的字符。 |
示例:‘abc‘.charAt(1); //"b" |
|
charCodeAt() |
返回在指定的位置的字符的 Unicode 编码。 |
示例:‘abc‘.charCodeAt(1); //98 |
|
indexOf(searchvalue,fromindex) |
检索字符串,返回对应下标。 |
示例:‘abcabc‘.indexOf(‘b‘,0); //1 ‘abcabc‘.indexOf(‘b‘,2); //4 |
|
search(regexp) |
检索与正则表达式相匹配的值,返回对应下标。 |
示例:‘abcabc‘.search(‘b‘); //1 ‘abcabc‘.search(/b/img); //1 |
|
match(regexp) |
找到一个或多个正则表达式的匹配,没有返回null,否则返回数组 |
示例:‘abcabc‘.match(‘b‘); //["b"] ‘abcabc‘.match(/b/img); //["b", "b"] |
|
PS:上述regexp,可以是子串、也可以是正则。 |
|||
fromCharCode() |
从字符编码创建一个字符串。 |
示例:String.fromCharCode(65,66,67); //"ABC" |
|
concat() |
连接字符串。 |
示例:‘abc‘.concat(‘def‘,‘ghi‘);; //"abcdefghi" |
|
substr() |
从起始索引号提取字符串中指定数目的字符。 |
示例:‘abcef‘.substr(1,2); //"bc" |
|
substring() |
提取字符串中两个指定的索引号之间的字符。 |
示例:‘abcef‘.substring(1,2); //"b" |
|
localeCompare() |
用本地特定的顺序来比较两个字符串。 |
示例:‘123‘.localeCompare(‘123‘); //0 ‘123‘.localeCompare(‘456‘); //-1 ‘456‘.localeCompare(‘123‘); //1 function sort(a,b){return a.localeCompare(b);} PS:把 < 和 > 运算符应用到字符串时,它们只用字符的 Unicode 编码比较字符串,而不考虑当地的排序规则。以这种方法生成的顺序不一定是正确的。例如,在西班牙语中,其中字符 “ch” 通常作为出现在字母 “c” 和 “d” 之间的字符来排序。 |
|
replace(regexp/substr,replacement) |
替换与正则表达式匹配的子串。 |
示例:‘abcabc‘.replace(‘a‘,‘d‘); //"dbcabc" ‘abcabc‘.replace(/a/g,‘d‘); //"dbcdbc" |
|
slice(start,end) |
提取字符串的片断,并在新的字符串中返回被提取的部分。 |
示例:‘abcabc‘.slice(1,2); //"b" |
|
split() |
把字符串分割为字符串数组。 |
示例:‘abc‘.split(‘‘); //["a", "b", "c"] |
|
toLocaleLowerCase() |
把字符串转换为小写。 |
示例:‘ABC‘.toLocaleLowerCase(); //"abc" |
|
toLocaleUpperCase() |
把字符串转换为大写。 |
示例:‘abc‘.toLocaleUpperCase(); //"ABC" |
|
toLowerCase( |
把字符串转换为小写。 |
示例:‘ABC‘.toLowerCase(); //"abc" |
|
toUpperCase() |
把字符串转换为大写。 |
示例:‘abc‘.toUpperCase(); //"ABC" |
|
PS:toLocaleLowerCase、toLocaleUpperCase只有几种语言(如土耳其语)具有地方特有的大小写映射,所有该方法的返回值通常与 toLowerCase()、toUpperCase() 一样。 |
|||
toString() |
返回字符串。 |
||
valueOf() |
返回某个字符串对象的原始值。 |
||
PS:valueOf() 方法通常由JavaScript在后台自动进行调用,而不是显式地处于代码中。 |
三、正则
/pattern/attributes
i 执行对大小写不敏感的匹配。
m 执行多行匹配。
g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
时间: 2024-10-20 08:30:41