zoukankan      html  css  js  c++  java
  • 对于数组的操作:splice与slice

                              <!--splice: 删除并 / 或添加数组元素-->

    特点:直接改变原数组,并返回被删除后的对象.

    语法 / 用法:array.splice(start);

              array.splice(start,deleteCount);

              array.splice(start,deleteCount,item1,item2...);

    1、start:为数组索引,means从这个索引开始(包含这个索引)删除数组内的元素。如果没有deleteCount,就代表删除索引之后所有的元素。

    2、deleteCount: 为总共删除几个元素,means从start开始(包含Start)一共删除多少个元素。

    3、item1,item2...: 为需要添加进数组的新元素。means先从Start开始删除,删除deleteCount(没有则删除Start及Start后所有的元素)个元素后,再新增item1.item2...等指定的新元素。

    eg: let array = [ h, e, l, l, o];

       let arr = array.splice(1);      ->   array = [ h ];  arr = [ e, l, l, o ];  ( 从索引为1的值开始删除,删除到最后一个元素)

       let ar = array.splice(1,1);       ->   array = [ h, l, l, o ];   arr = [ e ];  (从索引为1的值开始删除,并且总共只删除一个元素)

       let a = array.splice(1,1,'hi');      ->   array = [ h, hi, l, l, o];   arr = [ e ];  (从索引为1的值开始删除,总共只删除一个元素,并且在索引为1的位置插入一个字符串'hi')

                            <!--slice: 把从开始不包括结束的元素拷贝至一个新的数组对象-->

    特点:不改变原数组,返回操作后取得的对象.

    语法 / 用法 :array.slice();

          array.slice(begin);

          array.slice(begin,end);

    1、begin为从索引begin开始取数。没有end就取到数组末尾。没有begin也没有end,就从0取到数组末尾。

    2、有begin,也有end的话,包含begin开始取数,不包含end

    eg: let array = [ h, e, l, l, o];

       let arr = array.slice();      ->   array = [ h, e, l, l, o];  arr = [ h, e, l, l, o];

       let ar = array.slice(1,1);       ->   array = [ h, e, l, l, o];   arr = [  ];  ( 从索引1开始,但是又不包括索引1,所以取得的值为空数组 )

       let a = array.slice(1,2);      ->   array = [ h, e, l, l, o];   arr = [ e ];  ( 从索引1开始,包括索引1,取到索引为2的位置,但是不包括索引为2的值)

    个人认为MDN上讲的非常详细:

    splice -> https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/splice

    slice  -> https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/slice

  • 相关阅读:
    gcc 编译器常用的命令行参数一览
    linux下源代码分析和阅读工具比较
    Linux系统——C/C++开发工具及环境搭建
    GDB调试——经验总结
    gdb调试的艺术——Debug技巧
    命令__cp、scp(Secure Copy)
    常用shell脚本命令
    命令__查找、替换、删除
    UltraEdit 删除空行
    命令__shell数字-字符串比较
  • 原文地址:https://www.cnblogs.com/coconutGirl/p/7766106.html
Copyright © 2011-2022 走看看