JavaScript Array对象基本方法

昨天出去前端面试又失败,期间问了个有关于数组对象的问题,下面就这类问题总结下JavaScript常用的数组操作方法。

一、何为数组(Array)对象

数组对象是使用单独的变量名来存储一系列的值。

二、创建数组的三种方式

2.1使用关键词 new 来创建数组对象。

          let myStar =new Array();
          myStar[0]="刘德华";
          myStar[1]="成龙";
          myStar[2]="林青霞";
          myStar[3]="王菲";
          console.log(myStar);

2.2  基于2.1的简洁写法

        let myStar1=new Array("刘德华","成龙","林青霞","王菲");
        console.log(myStar1[2]);//访问数组,Arry[索引值]

2.3对象字面量创建数组对象

let myStar2=["刘德华","成龙","林青霞","王菲"];
console.log(myStar2);

注:数组中数值可以是不同类型组成,它们可以是string类型,Boolean类型,number类型、空数组,甚至是函数对象。

三、数组对象的基本方法

3.1  concat()

concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,仅会返回被连接数组的一个结果。

        var arry1=[1,2,3];
        var arry2=[1];
        var arry3=["Hi",true];
        var arry4=arry1.concat(arry2,arry3);
        console.log(arry4);//[1, 2, 3, 1, "Hi", true]                    

3.2 join ()

join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的,默认使用','号分割,

        var arr=[1,6,8];
        console.log(arr.join('/'));//   1/6/8
        console.log(arr.join('-'));//    1-6-8

3.3 push()
  push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。末尾添加,返回的是长度,会改变原数组。

        var a =[9,8,5];
        var b=a.push(2,1,1);
        console.log(a);//[9, 8, 5, 2, 1, 1]
        console.log(b); //6

3.4pop()

pop() 方法用于删除并返回数组的最后一个元素。返回最后一个元素,会改变原数组。

        var c=[2,9,5];
        console.log(c.pop());//5
        console.log(c);//[2, 9]

3.5  shift()

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。返回第一个元素,改变原数组。

         var arr2=[4,5,6];
        console.log(arr2.shift());//4
        console.log(arr2);//[5, 6]

3.6  unshift()

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。返回新长度,改变原数组。

        var arr3=[4,6,8,9];
        console.log(arr3.unshift(1,2));//6
        console.log(arr3);// [1, 2, 4, 6, 8, 9]

3.7  slice()

返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。
返回选定的元素,该方法不会修改原数组。

     var arr4=[3,3,4,6]
        console.log(arr4.slice(0,3));//[3, 3, 4]
        console.log(arr4);//[3,3,4,6]

3.8 splice()

splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。会改变原始数组。
格式: splice(从哪开始(index),删除的个数,添加一个或多个元素)

var aa = [5,6,7,8];
console.log(aa.splice(1,0,9)); //[]
console.log(aa);  // [5, 9, 6, 7, 8]
var bb = [5,6,7,8];
console.log(bb.splice(1,2,3));  //[6, 7]
console.log(bb); //[5, 3, 8]

3.9 substring() 和 substr()

    var str = '123456789';
        console.log("123456789".substr(2,5));    //  "34567"
        console.log("123456789".substring(2,5)) ;//  "345"

区别:;两个参数

substr(从哪开始,选取个数);

substring( 从哪开始,到哪结束);

3.10 sort()排序

var fruit = ['cherries', 'apples', 'bananas',1,2,10];
console.log(fruit.sort())
// [1, 10, 2, "apples", "bananas", "cherries"]

3.11 reverse()

var arr = [2,3,4];
console.log(arr.reverse()); //[4, 3, 2]
console.log(arr);  //[4, 3, 2]

3.12toLocaleString();toString() 

toLocaleString()把数组转换为本地字符串。

toString() 方法可把数组转换为字符串,并返回结果。

var  myStar3=["刘德华","成龙","林青霞","王菲"];
var  myStar4=["刘德华","成龙","林青霞","王菲"];
console.log(myStar3.toLocaleString());//刘德华,成龙,林青霞,王菲
console.log(myStar4.toString());//刘德华,成龙,林青霞,王菲

猜你喜欢

转载自www.cnblogs.com/smile-xin/p/11447990.html