javascript数组

357 阅读3分钟

数组:数组用来在单独的变量名中存储一系列的值。

  • 数组也是一个对象

  • 他和普通对象功能类似,也是用来存储一些值的

  • 不同的是普通对象是使用字符串作为属性名的,而数组是使用数字来作为索引操作元素的

    //创建数组对象 var arr = new Array();

    //使用typeof检查一个数组时,会返回object        console.log(typeof arr);
    

索引

  • 从0开始的整数就是索引

  • 数组的存储性能比普通对象要好,在开发中经常使用数组来存储一些数据

向数组中添加对象

  • 语法:数组[索引] = 值

  • 向数组的最后一个位置添加元素:

  • 语法:数组[数组.length]=值

读取数组中的元素

  • 语法:数组

  • [索引] = 值

  • 如果读取不存在的索引,不会报错会返回undefined

    arr[0]=10; arr[1]=33;
    arr[2]=12;
    arr[10]=1212;
    //读取数组中的元素
    console.log(arr[1]);

获取数组的长度

  • 可以使用length属性来获取数组的长度

  • 语法:数组.length

  • 对于连续的数组,使用length属性获取数组的长度(元素的个数)

  •  对于非连续的数组,获取数组的长度是最大的索引+1

      //读取不存在的元素会返回undefined  
      console.log(arr[2]);         //length获取数组的长度(元素的个数)   
      console.log(arr.length); 
    

修改length

  • 如果修改的length大于原长度,则多出部分会空出来

  • 如果修改的length小于原长度,则多余的元素会被删除

数组创建

一维数组的创建方法,每个数组的下标值从0开始

var classmate=new Array(); 
classmate[0]=“smith"; 
classmate[1]=“john"; 
classmate[2]=“bill"; 

或者

var class=new Array(“smith”, ”jonh” , ”bill”);

使用字面量创建对象

var arr = [ 1,2,3]

 //使用字面量创建数组    
  var arr2=[1,2,3,4,5,6,7,8,9,10];    
  console.log(arr2);

使用构造函数创建对象

也可以同时添加元素,将要添加的元素作为参数传递,元素中间使用逗号隔开

  •  数组中的元素可以是任意数据类型,也可以是个对象

  •  数组中的元素也可以是数组

    //使用构建函数创建数组
    var arr3=new Array(10,20,30);

    //创建一个长度为10的数组 var arr4=new Array(10);
    console.log(arr4.length);

    //创建一个长度为10的数组
    var arr4=new Array(10);
    console.log(arr4.length);

数组的四个方法

 push( )方法

  •   该方法可以在数组的末尾添加一个或多个元素,并返回数组新的长度

  •  可以将要添加的元素作为方法的参数传递,这些元素将自动添加到数组的末尾

  •  该方法会将数组新的长度作为返回值返回

    //创建一个数组
    var arr = ["孙悟空","猪八戒","沙和尚"];

    //利用数组的长度在末尾添加元素 arr[arr.length]="蜘蛛精";

    //push()在数组末尾添加元素,并返回数组新的长度 var result=arr.push("唐僧");
    console.log(arr);
    console.log("result="+result); //result=5数组的长度

 pop( )方法

  • 该方法可以删除数组的最后一个元素,并将被删除的元素作为返回值返回

    //pop()删除数组的最后一个元素,并将被删除的元素最为返回值返回 var result=arr.pop(); console.log(arr); console.log("result="+result);

 unshift( )方法

  • 该方法可以向数组的开头添加一个或多个元素,并将数组新的长度作为返回值返回

  • 向前边插入元素以后,其他元素的索引会依次调整

    //unshift()向数组的开头添加一个或多个元素,并返回数组新的长度 arr.unshift("牛魔王","二郎神");
    console.log(arr);

shift( )方法

  •  该方法可以删除数组的第一个元素,并将被删除的元素作为返回值返回

    //shift()删除数组的第一个元素,并将被删除的元素最为返回值返回 var result=arr.shift();
    console.log(arr);
    console.log("result="+result);