zoukankan      html  css  js  c++  java
  • slice()方法 和splice 方法的区别

    原文:http://www.cnblogs.com/web-ed2/archive/2011/07/20/2111678.html

    定义

    splice() 方法 用于插入、删除或替换数组的元素。

    slice() 方法 可提取字符串的某个部分,并以新的字符串返回被提取的部分。

    用法 

    splice 的参数splice (start, deleteCount, [item1[, item2[, . . . [,itemN]]]])

    数组从 start下标开始,删除deleteCount 个元素,并且可以在这个位置开始添加 n个元素

    当start ,deleteCount 均为0 的时候,也就是在数组的最前面插入新的元素。

    当 参数只有 start,deleteCount 就是从start 下标开始删除deleteCount 个数组的元素,

    当参数只有start参数时,就是删除 从start下标起至最后 的元素

    当参数 为负的时 则该参数规定的是从数组元素的尾部开始算起的位置 (-1 指的是 数组中倒数第一个元素, -2 指的是,数组中倒数第二个元素。)


    slice 参数 : slice(start,end);

    slice 方法,在string对象和array对象 的用法上类似。

    对于数组对象来说,slice 方法提取 从 start下标起 以end下标 为结尾的 一段元素(但不包括end下标的元素),然后返回新的数组,对原数组没有任何是影响,

    当参数为负时 则该参数 是从 数组的末尾 索引 开始算起,(-1 指的是 数组中倒数第一个元素, -2 指的是,数组中倒数第二个元素。)

    当参数为一个参数,当为一个参数时,提取 是以 start下标起 至末尾的 部分元素。

    当start 为0 时, 等于说是 克隆一个新的数组,克隆后 两个数组进行各自的操作,都互不影响,

    var clone = array.slice(0);


    当然 克隆 数组还有其他办法

    借用concat()函数进行数组的复制:

    concat() 用于进行数组的合并。使用语法为:  arrayObject.concat(arrayX,arrayX,......,arrayX) 
    concat()用于多个数组的合并,但是返回的结果是一个新的数组,而不再引用用于合并的任何一个数组。可以利用它的这个特性来用一个数组连接空数组或直接不传参数完成clone的功能.
    var clone= array.concat();

  • 相关阅读:
    Introduction to Machine Learning
    IEEE 802.3 Ethernet
    Introduction to Computer Networks(网络架构与七层参考模式)
    Integral类型的跨平台使用
    Aggregate类型以及值初始化
    合成的默认构造函数定义为delete的一种情况(针对C++11标准)
    版本控制工具Git
    编程实现计算器
    Linux客户/服务器程序设计范式2——并发服务器(进程池)
    Linux客户/服务器程序设计范式1——并发服务器(多进程)
  • 原文地址:https://www.cnblogs.com/acafaxy/p/2113408.html
Copyright © 2011-2022 走看看