js的字符串方法(2)

substr() 类似于 slice()。

不同之处在于第二个参数规定被提取部分的长度。

1 var str = "Apple, Banana, Mango";
2 var res = str.substr(7,6);

res 的结果是:

Banana
如果省略第二个参数,则该 substr() 将裁剪字符串的剩余部分
1 var str = "Apple, Banana, Mango";
2 var res = str.substr(7);

res 的结果是:

Banana, Mango
如果首个参数为负,则从字符串的结尾计算位置。
1 var str = "Apple, Banana, Mango";
2 var res = str.substr(-5);

res 的结果是:

Mango

第二个参数不能为负,因为它定义的是长度。

replace() 方法用另一个值替换在字符串中指定的值:

1 str = "Please visit Microsoft!";
2 var n = str.replace("Microsoft", "W3School");

replace() 方法不会改变调用它的字符串。它返回的是新字符串。

默认地,replace() 只替换首个匹配:

1 str = "Please visit Microsoft and Microsoft!";
2 var n = str.replace("Microsoft", "W3School");

默认地,replace() 对大小写敏感。因此不对匹配 MICROSOFT:

1 str = "Please visit Microsoft!";
2 var n = str.replace("MICROSOFT", "W3School");

如需执行大小写不敏感的替换,请使用正则表达式 /i(大小写不敏感):

1 str = "Please visit Microsoft!";
2 var n = str.replace(/MICROSOFT/i, "W3School");

如需替换所有匹配,使用正则表达式的 g 标志(用于全局搜索):

1 str = "Please visit Microsoft and Microsoft!";
2 var n = str.replace(/Microsoft/g, "W3School");

通过 toUpperCase() 把字符串转换为大写:

1 var text1 = "Hello World!";       // 字符串
2 var text2 = text1.toUpperCase();  // text2 是被转换为大写的 text1

通过 toLowerCase() 把字符串转换为小写:

1 var text1 = "Hello World!";       // 字符串
2 var text2 = text1.toLowerCase();  // text2 是被转换为小写的 text1

concat() 连接两个或多个字符串:

1 var text1 = "Hello";
2 var text2 = "World";
3 text3 = text1.concat(" ",text2);

concat() 方法可用于代替加运算符。下面两行是等效的

1 var text = "Hello" + " " + "World!";
2 var text = "Hello".concat(" ","World!");

所有字符串方法都会返回新字符串。它们不会修改原始字符串。

正式地说:字符串是不可变的:字符串不能更改,只能替换。

posted @ 2020-03-01 22:19  我有头盔  阅读(289)  评论(0编辑  收藏  举报