JavaScript引用类型之Array数组的拼接方法-concat()和截取方法-slice()
2016-09-22 11:13
696 查看
1、concat() 基于当前数组中的所有项创建一个新数组(也就是副本),然后将接收到的参数添加到副本的末尾,最后返回新构建的数组。也就是说,concat()在向数组中追加元素时,不会改变原有数组的内容,而是改变数组副本的内容。
有如下代码:
这里需要注意,concat()的追加对象的方式是将对象拆分开,然后将对象里面的属性和属性值,或者是数组的值分别作为一个对象插入到目标数组的副本中去!
2、slice()
参数说明:
start:从零开始的索引位置开始提取
end:从零开始的索引位置结束提取。如果省略,则提取从start位置开始,直至最后一个字符,代码如下
下面是省略end参数的slice例子,代码如下:
分析上面的代码,发现当我们省略end参数时,slice()方法就从start参数开始截取直至字符串最后一个!注意包括start为1的那个字符!
下面是包括end的slice例子,代码如下:
分析上面的代码,发现当有end参数时,slice()方法就从start参数开始截取直至字符串最后一个!注意包括索引为1的那个字符,但是不包括索引为7的那个字符!
下面来说下slice()方法最重要的一个特性,代码如下:
分析上面的代码,发现slice()方法截取字符串还是比较灵活的,可以用负数,而与之功能差不多的subString()却无法使用负数!
有如下代码:
<script> var colors=["red","blue","green"]; var colors1=colors.concat("yellow",["black","brown"]); alert(colors);//输出:red,blue,green 说明contact()在追加内容是并不是追加到原数组(这里指colors数组),而是原数组的一个副本 alert(colors1);//输出:red,blue,green,yellow,black,brown </script>
这里需要注意,concat()的追加对象的方式是将对象拆分开,然后将对象里面的属性和属性值,或者是数组的值分别作为一个对象插入到目标数组的副本中去!
2、slice()
string.slice(start,end); //用法
参数说明:
start:从零开始的索引位置开始提取
end:从零开始的索引位置结束提取。如果省略,则提取从start位置开始,直至最后一个字符,代码如下
下面是省略end参数的slice例子,代码如下:
<script> var ambition="I am CEO Bitch!"; ambition=ambition.slice(1); alert(ambition); //输出:am CEO Bitch! </script>
分析上面的代码,发现当我们省略end参数时,slice()方法就从start参数开始截取直至字符串最后一个!注意包括start为1的那个字符!
下面是包括end的slice例子,代码如下:
<script> var ambition="I am CEO Bitch!"; ambition=ambition.slice(2,7); alert(ambition); //输出:am CE 从第二个字符开始截取,直至第7个字符,但是不包括第7个字符 </script>
分析上面的代码,发现当有end参数时,slice()方法就从start参数开始截取直至字符串最后一个!注意包括索引为1的那个字符,但是不包括索引为7的那个字符!
下面来说下slice()方法最重要的一个特性,代码如下:
<script> var ambition="I am CEO Bitch!"; ambition=ambition.slice(2,-2); alert(ambition); //输出:am CEO Bitc 从第二个字符开始截取,截到倒数第二个字符处,但是不包括倒数第二个字符 </script>
分析上面的代码,发现slice()方法截取字符串还是比较灵活的,可以用负数,而与之功能差不多的subString()却无法使用负数!
相关文章推荐
- js绑定和解除事件
- javascript获取字符串中出现最多的字符并弹出其次数
- JS中也可以使用JSTL和EL标签
- js的解析和执行过程
- js替换字符串
- js的replace函数
- JavaScript发送原生ajax请求
- Actionscript与javascript交互实例程序(修改)
- 刷新页面随机改变某段落的文字(js代码)
- jsp获取session
- js模板,我们可以在<script>片断中定义一个被JS调用的代码,但代码又不在页面上显示.
- js ajax提交后按钮显示loading简单效果
- flexible.js字体大小诡异现象解析及解决方案
- JS—数组深层复制
- JavaScript引用类型之Array数组的排序方法
- JSP
- JS高级程序设计(三):引用类型
- JavaScript中易犯的小错误---“常见错误一”
- php从mysql中读取空间数据在javascript中调用这个空间数据的值
- JS中的this对象详解