美文网首页
slice和splice的区别

slice和splice的区别

作者: 前端葱叶 | 来源:发表于2020-11-18 22:19 被阅读0次

    一、Array.slice() 方法可从已有的数组中返回选定的元素。

    发音:[slaɪs]

    slice(start,end)从哪到哪开始删除/截取

    • start 开始索引

    • end 结束索引,可以不传,默认截取从start往后的所有元素;

    • 索引可以为负数,从后往前截取,-1倒数第一个,-2倒数第二个;

    • 该方法不会改变原有数组,而是返回一个子数组。如果想删除数组中的一段元素,应该使用方法 Array.splice()。

        var arr1 = ["a", "b", "c", "d", "e"];
          console.log(arr1);
          console.log("arr1.slice(1,3):", arr1.slice(1, 3)); //['b','c']
          console.log("arr1.slice(3):", arr1.slice(3)); //['d','e']
          console.log("arr1.slice(1,-2):", arr1.slice(1, -2)); //['b','c']
    

    二、 Array.splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。

    发音: [splaɪs]

    splice(index,howmany,item1...itemx)

    • index 删除开始位置的索引
    • howmany删除的数量
    • item1...itemx传递新元素,这些元素可以插入到开始位置索引前边
    • 会改变原有的数组
     var arr1 = ["a", "b", "c", "d", "e"];
     console.log("splice方法arr1.splice(0,3)",arr1.splice(0,3));//['a','b','c']
     console.log("splice方法arr1.splice(0,3,'zm','xc')",arr1.splice(0,3,'zm','xc'));//["zm", "xc", "d", "e"]
    

    参考链接:
    https://www.w3school.com.cn/js/jsref_slice_array.asp
    https://www.w3school.com.cn/jsref/jsref_splice.asp

    相关文章

      网友评论

          本文标题:slice和splice的区别

          本文链接:https://www.haomeiwen.com/subject/nvuhiktx.html