掌握数组的操作方法: concat() /  slice()

  • concat()
    • 语法: arrayObject.concat(arrayX,arrayY,....,arrayZ)
    • 功能:用于连接两个或多个数组。
    • 返回值:数组
    • var arr1=["a","b","c"], 
      arr2=["d","e",1,3],
      arr3; //concat 把arr1和arr2链接起来,返回新的数组赋值给arr3
      arr3 = arr1.concat(arr2); console.log(arr3);
  • slice()
    • 语法:arrayObject.slice(start,end)
    • 功能:从已有的数组中返回选定的元素
    • 参数:start(必需)规定从何处开始选取,如果是负数,从数组尾部开始算起。end(可选)规定从何处结束选取,是数组片段结束处的数组下标。
    • 如果没指定end,切分的数组包含从start到数组结束的所有元素。
    • 如slice()方法的参数中有一个负数,则用数组长度(arr.length)加上该数来确定相应的位置。
    • 返回值:数组
    • start和end指的是数组中索引值,截取从start和end(不包含该元素),及从start~end-1的元素。

 

 

 

  应用:一道面试题

  

//完成以下代码段,实现b数组对a数组的拷贝,方法越多越好
//第一种传统的方法,遍历赋值 push
var a=[1,"yes",3],
      b;
b=new Array();
for(var i=0;i<a.length;i++)
{
   b.push(a[i]);       
}

//第二种方法,concat()
b=[].concat(a);

//第三种方法,slice()
b=a.slice(0);

 

Posted on 2018-02-11 18:01  ZHONGLINGHUI  阅读(179)  评论(0)    收藏  举报