ES6数组方法

206 阅读2分钟

数组的创建

数组的创建方式有三种:构造函数方式,字面量方式,ES6新增的Array.of()方法创建。

构造函数方式

let arr = new Array();  //创建一个空数组

let arr = new Array(10);  //创建一个长度为10的空数组

let arr = new Array('a');  //创建一个元素包含字符串a的数组

let arr = new Array(10,'a');  //创建包含10和字符串a两个元素的数组

         小结:

    1,new关键字是可以省略的

    2,当只传一个number类型参数时,创建的是参数指定长度的数组,即构造函数创建数组,不能创建只包含一个number类型元素的数组。

字面量方式:

let arr = [10,'a'];  //字面量方式,即直接给数组赋值

Array.of()方法(ES6新增):

方法的作用是将一组值(即传进来的参数),转换为数组。

这个方法弥补了,构造函数创建数组的不足,可以实现创建只有一个number类型元素的数组

let arr = Array.of(3);
console.log(arr);  //  [3]

参数可以是各种类型

let arr1 = Array.of(1,'a',true,null,undefined,{name:"zhangsan"},[45]);
console.log(arr1);  // [1,'a',true,null,undefined,{name:"zhangsan"},[45]];

数组的检测:

两种较为准确的检测方法:

   1,利用对象的toString方法

    Object.prototype.toString().call([]) === "[object Array]";  // true    
    Array.isArray();    
    Array.isArray([1,2,3]);  //  true

数组的属性:

length属性:作用:

     设置或返回数组的长度;

     可用来增加和删除数组项;

    let arr = [1,2];     
    arr.length = 1;     
    console.log(arr);  //  [1]     
    arr.length = 3;     
    console.log(arr);  //  [1, , ]

数组的方法

JavaScript的数组方法包括数组原型的方法,构造函数的方法(ES6新增部分);

针对每一个方法我们主要了解四个方面:作用,参数,返回值,原数组是否改变。

(一).原型上的方法

1,push():

     作用:向数组末尾添加一项或多项,

     参数:ele1[,ele2[,...[,elen]]]

     返回值:添加元素后数组的长度

     原数组是否改变:是

    let arr = [1,2,3];     
    let temp = arr.push('a','b');     
    console.log(arr,temp);  //  [1,2,3,'a','b']  5

2,  pop():

     作用:删除数组最后一项,

     参数:无

     返回值:删除的那一项,

     原数组是否改变:是

    let arr = [1,2,3];     
    let temp = arr.pop();     
    console.log(arr,temp);  //  [1,2]  3

3,  unshift():

     作用:向数组开头添加一项或多项,

     参数:ele1[,ele2[,...[,elen]]]

     返回值:添加元素后数组的长度

     原数组是否改变:是

    let arr = [1,2,3];     
    let temp = arr.unshift('a','b');     
    console.log(arr,temp);  //  ['a','b',1,2,3]  5

4,shift():

     作用:删除数组第一项;

     参数:无

     返回值:删除的那一项;

     原数组是否改变:是

(loading)