javascript中concat()、slice()、substr()和substring()字符串方法
来源:互联网 发布:java读懂项目代码 编辑:程序博客网 时间:2024/05/22 00:44
方法一,
concat(),用于将一或多个字符串拼接起来,返回拼接得到的新字符串。先看一个例子:
var stringValue = "hello "
var result = stringValue.concat("world");
alert(result); //"hello world"
alert(stringValue); //"hello"
通过stringValue调用concat()方法返回的结果是“hello world”——但stringValue的值保持不变。
实际上,concat()方法可以接受任意多个参数,也就是说可以通过它拼接任意多个字符。
例子:
var stringValue ="hello ";
var result = stringValue.concat("world", "!");
alert(result); //"hello world!"
alert(stringValue); //"hello"
这个例子将“world”和“!”拼接到了“hello”的末尾。虽然concat()是专门用来拼接字符串的方法,但实践中使用更多的还是加号操作符(+)。而且,使用加号操作符在大多数情况下都比使用concat()方法要简便易行。
ECMAScript还提供了三个基于字符串创建字符串的方法:slice()、substr()和substring()。这三个方法都会返回被操作字符串的一个字符串,而且也接受一或两个参数。第一个参数指定字符串的开始位置,第二个参数表示字符串到那里结束。具体来说,slice()和substring()的第二个参数指定的是子字符串最后一个字符后面的位置。而substr()的第二个参数指定的则是返回的字符个数。如果没有给这些方法传递第二个参数,则将字符串的长度作为结束位置。与concat()方法一样,slice()、substr()和substring()也不会修改字符串本身的值——它们只是返回一个基本类型的字符串值,对原始字符串没有任何影响。
例子:
var stringValue = "hello world";
alert(stringValue.slice(3)); //"lo world"
alert(stringValue.substring(3)); //"lo world"
alert(stringValue.substr(3)); //"lo world"
alert(stringValue.slice(3, 7)); //"lo w"
alert(stringValue.substring(3, 7)); //"lo w"
alert(stringValue.substr(3, 7)); //"lo worl"
以上例子比较了相同方式调用slice()、substring()得到的结果,而且多数情况下的结果是相同的。在只指定一个参数3的情况下,这三个方法都返回“lo world”,因为“hello”中的第二个“l”处于位置3.而在指定两个参数3和7的情况下,slice()和substring()返回“low”,但substr()返回”lo worl”,因为它的第二个参数指定的是要返回的字符个数。
在传递给这些方法的参数是负值的情况下,它们的行为就不尽相同了。
其中slice()方法会将传入的负值与字符串的长度相加,substr()方法将负的第一个参数加上字符串的长度,而将负第二个参数转换为0。
最后,substring()方法会把所有负值参数都转换为0。
例子:
var stringValue = "hello world";
alert(stringValue.slice(-3)); //"rld"
alert(stringValue.substring(-3)); //"hello world"
alert(stringValue.substr(-3)); //"rld"
alert(stringValue.slice(3, -4)); //"lo w"
alert(stringValue.substring(3, -4)); //"hel"
alert(stringValue.substr(3, -4)); //""
以上例子展示了上述三个方法之间的不同行为。在给slice()和substr()传递一个负值参数时,它们的行为相同。这是因为-3会被转换为8,实际上相等于调用了slice(8)和substr(8)。但substring()方法则返回了全部字符串,因为它将-3转换成了0。
IE中的JavaScript实现在处理向substr()方法传递负值的情况时存在问题,天返回原始的字符串。
当第二个参数是负数时,这三个方法的行为各不相同。slice()会把第二个参数转换为7,这就相当于调用了slice(3,7),因此返回“lo w”。
substring()方法会把第二个参数转换为0,使调用变成了substring(3, 0),而由于这个方法会将较小的数作为开始位置,将较大的数作为结束位置,因此最终相当于调用了substring(0, 3)。
substr()也会将第二个参数转换为0,这也就意味着返回包含零个字符的字符串,也就是一个空字符串
- javascript中concat()、slice()、substr()和substring()字符串方法
- 字符串中substring(),substr(),slice()方法用法
- javascript 中 slice()、substr() 和subString()使用
- javascript的字符串方法【substring、slice、substr】的区别
- 字符串操作方法concat(),slice(),substr(),substring()之间的区别
- javascript---字符串操作方法slice,substr,substring区别
- JavaScript字符串处理:substring, substr, slice
- JavaScript 中的字符串分割 slice()、substr()、substring()
- slice(), substring()和substr()3中截断方法的区别
- String类型中slice()、substr()和substring()方法的区别
- javascript中,substr,substring,slice的区别
- javascript中substring()、substr()、slice()的区别
- javascript中substring()、substr()、slice()的区别
- JS截取字符串:slice(),substring()和substr()
- js substring、substr和slice 截取字符串
- JS数组的slice()方法传负数和字符串操作函数中的slice()、substr()、substring()
- 字符串截取substr substring slice
- 字符串的slice(),substr(),substring()
- 获取当前显示屏幕某一点的颜色
- typecho管理员帐号密码忘记的修改方法
- LeetCode—51.N-Queens
- USB转串口CH340接线方法
- LoadRunner如何监控Tomcat性能
- javascript中concat()、slice()、substr()和substring()字符串方法
- LayoutInflater的inflate方法详解
- Python/scikit-learn机器学习库(SVM支持向量机)
- 通过gitcheckout到本地然后通过pod添加框架后出现.h文件找不到问题的解决办法
- Ubuntu 常用命令记载
- 值得推荐的C/C++框架和库
- Redis Windows 安装使用及数据存储
- Swift 学习笔记 - 类(1) 定义一个类
- 使用自定义数据类型实现评论数时间、评论总数计数(mapreduce)