javascript的splice、slice、split的比较
来源:互联网 发布:头像源码 编辑:程序博客网 时间:2024/05/01 09:15
今天比较一下JavaScript Array 对象的三个方法:splice、slice、split:
1、splice定义和用法
splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。
注释:该方法会改变原始数组。
语法
arrayObject.splice(index,howmany,item1,.....,itemX)
返回值
说明
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
提示和注释
注释:请注意,splice() 方法与 slice() 方法的作用是不同的,splice() 方法会直接对数组进行修改。
实例
例子 1
在本例中,我们将创建一个新数组,并向其添加一个元素:
<script type="text/javascript">var arr = new Array(6)arr[0] = "George"arr[1] = "John"arr[2] = "Thomas"arr[3] = "James"arr[4] = "Adrew"arr[5] = "Martin"document.write(arr + "<br />")arr.splice(2,0,"William")
document.write(arr + "<br />")</script>例子 2
在本例中我们将删除位于 index 2 的元素,并添加一个新元素来替代被删除的元素:
<script type="text/javascript">var arr = new Array(6)arr[0] = "George"arr[1] = "John"arr[2] = "Thomas"arr[3] = "James"arr[4] = "Adrew"arr[5] = "Martin"document.write(arr + "<br />")arr.splice(2,1,"William")
document.write(arr)</script>输出:
George,John,Thomas,James,Adrew,Martin
George,John,William,James,Adrew,Martin
输出:
George,John,Thomas,James,Adrew,MartinGeorge,John,William,Thomas,James,Adrew,Martin
2、slice定义和用法
slice() 方法可从已有的数组中返回选定的元素。
语法
arrayObject.slice(start,end)
返回值
返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。
说明
请注意,该方法并不会修改数组,而是返回一个子数组。如果想删除数组中的一段元素,应该使用方法 Array.splice()。
提示和注释
注释:您可使用负值从数组的尾部选取元素。
注释:如果 end 未被规定,那么 slice() 方法会选取从 start 到数组结尾的所有元素。
实例
例子 1
在本例中,我们将创建一个新数组,然后显示从其中选取的元素:
<script type="text/javascript">var arr = new Array(3)arr[0] = "George"arr[1] = "John"arr[2] = "Thomas"document.write(arr + "<br />")document.write(arr.slice(1)
+ "<br />")document.write(arr)</script>
输出:
George,John,ThomasJohn,ThomasGeorge,John,Thomas
例子 2
在本例中,我们将创建一个新数组,然后显示从其中选取的元素:
<script type="text/javascript">var arr = new Array(6)arr[0] = "George"arr[1] = "John"arr[2] = "Thomas"arr[3] = "James"arr[4] = "Adrew"arr[5] = "Martin"document.write(arr + "<br />")document.write(arr.slice(2,4)
+ "<br />")document.write(arr)</script>
输出:
George,John,Thomas,James,Adrew,MartinThomas,JamesGeorge,John,Thomas,James,Adrew,Martin
3、split()定义和用法
split() 方法用于把一个字符串分割成字符串数组。
语法
stringObject.split(separator,howmany)
返回值
一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括separator 自身。
但是,如果 separator 是包含子表达式的正则表达式,那么返回的数组中包括与这些子表达式匹配的字串(但不包括与整个正则表达式匹配的文本)。
提示和注释
注释:如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。
注释:String.split() 执行的操作与 Array.join 执行的操作是相反的。
实例
例子 1
在本例中,我们将按照不同的方式来分割字符串:
<script type="text/javascript">var str="How are you doing today?"document.write(str.split(" ") + "<br />")document.write(str.split("") + "<br />")document.write(str.split(" ",3))</script>
输出:
How,are,you,doing,today?H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?How,are,you
例子 2
在本例中,我们将分割结构更为复杂的字符串:
"2:3:4:5".split(":")//将返回["2", "3", "4", "5"]"|a|b|c".split("|")//将返回["", "a", "b", "c"]
例子 3
使用下面的代码,可以把句子分割成单词:
var words = sentence.split(' ')
或者使用正则表达式作为 separator:
var words = sentence.split(/\s+/)
例子 4
如果您希望把单词分割为字母,或者把字符串分割为字符,可使用下面的代码:
"hello".split("")//可返回 ["h", "e", "l", "l", "o"]
若只需要返回一部分字符,请使用 howmany 参数:
"hello".split("", 3)//可返回 ["h", "e", "l"]
- javascript的splice、slice、split的比较
- slice ,splice, split的详解
- splice/slice/split的区别
- JavaScript中易混淆的方法之split、splice、slice辨析比较
- javascript中 slice,splice和split三个函数的区别
- javascript中Array的slice和splice方法的比较
- js中的slice,splice,split的区分
- JS中slice,splice,split的区别
- js中split、splice、slice的区别
- 傻傻分不清的 slice,split 和splice
- slice、splice和split各自的用法
- slice、splice和split的区别
- splice、split和slice的区别
- slice,split,splice的区别与用法
- javascript中不易分清的slice,splice和split三个函数
- JavaScript中不易分清的slice,splice和split三个函数
- javascript 的splice()方法和slice()方法
- JavaScript Array.splice()和slice()的区别
- 2016.08.22工作日志
- Spring
- Binder机制
- JS图片切换,幻灯+缩略图的实例效果
- 数据结构实验之栈七:出栈序列判定
- javascript的splice、slice、split的比较
- 使用libevent编写高并发HTTP server
- 6、mui 页面传参
- react的使用方法
- 根据屏幕大小改变div
- Hue搭建
- C# json 转 object
- runtime理解
- 第114课(Scala版本)SparkStreaming+Kafka+Spark SQL+TopN+Mysql 电商广告点击综合案例实战