js 数组

1. 创建数组

2. 数组的长度

  lenght是数组的一个属性,用来描述数组的元素个数即数组长度,如 a.lenght。

3. 数组的操作

  数组元素的添加和删除

    1. 在数组的头部添加和删除元素 shift()删除数组头部元素    unshift()增加元素到数组的头部 。这种方法会改变数组的索引值,如果数组头部删除一个元素,则数组后面元素索引值减一,如,删除a[0]元素,则原来的a[1]成为现在的a[0]

              2. 在数组内部删除元素delete a[5],删除数组的第五个元素, 但是此方法不改变数组的索引。数组将成为稀疏数组。

              3. 在数组的尾部删除或添加元素 push()添加元素至数组尾部,pop()删除数组尾部的元素

       遍历数组

              1. for循环       for(var i=0;i<arr.leght;i++){...}

              2. for/in           for(var i in arr){....}           i为数组的索引

         3. foreach()     arr.foreach(function(x){...})     x为数组内的元素,在遍历时分别为arr[0]到arr[arr.lenght]的元素。

4. 数组方法

  jion(),将数组元素转化为字符串并链接在一起,返回最后生成的字符串。

  reserve(),将数组元素颠倒顺序,返回逆序的数组。

  sort(),将数组中的元素排序,返回排序的数组

  concat(), var arr =  [1,2,3].concat([4,5],[6,7]),则数组arr为[1,2,3,4,5,6,7],concat()链接数组并返回合并后的数组,但不改变原数组。

  slice(),返回指定数组的一个片段或子数组。它的两个参数分别指定了片段的开始和结束位置,返回的数组包括,第一个参数指定的位置,到但不包括第二个参数指定的位置。如果只有一个参数则返回从指定位置到结束的片段,如果参数为负数,表示位置从数组的后面定位。

  splice(),从数组中删除元素,插入元素,或同时完成这两项操作,第一个参数指定了插入或删除的起始位置,第二个参数指定了要删除的元素的个数,如果省略则表示从起始位置删除到末尾,随后的任意参数指定了要插入到数组的元素。splice()返回一个由删除元素组成的数组,如果没有删除任何元素,则返回空。例,a=[1,2,3,4,5,6];var b = a.splice(2,2,[7,8],9);则b=[3,4],a=[1,2,[7,8],9,5,6]

  toString与toLocalString(),该方法将数组元素转化为字符转,并返回用逗号分隔的字符串列表,输出方法不包括方括号,或其他任何形式包裹的数值的分隔符。例['a','b','c'].toString()返回’a,b,c‘,[1,[2,'c'],'d'].toString()返回’1,2,c,d‘。这里与不是用人和参数的jion()方法是一样的。

5. ECMAScript5中包含的方法

  map(),将调用数组的每个元素传递给指定的函数,并返回一个数组,它包含该函数的返回值。

    例,a=[1,2,3];

      b=a.map(function(x){return x*x};)   //b是[1,4,9]

  filter(),返回的数组元素是调用的的数组的一个子集。

    例,a=[5,4,3,2,1]

      b = a.filter(function(x){ return x<3; });  则b=[2,1]

  indexOf(),lastIndexOf(),搜索整个数组中,具有给定值的元素,返回找到的第一个元素的索引,或者没有找到则返回-1,indexOf()从头找到尾,lastIndexOf()则反向搜索。

6. 数组类型

  isArray(),用来检测是否为数组,返回true或false。

  [] instanceof Array ->true  instanceof也是用来判断是否数组

原文地址:https://www.cnblogs.com/huntaheart/p/3560655.html