1.创建空数组

  var arr = new Array()      var arr=[]      

2.创建时赋值

  var arr = new Array(1,2,3)     var arr = [1,2,3]

3.创建含有n个元素的数组

  var arr = new Array(n)//若只有一个则表示长度n

赋值

  arr[i]=23

  .length//数组长度

.length固定用法

  获取最后一个元素:arr[arr.length-1]

  获取倒数n个元素

  数组尾追加一个元素:arr[arr.length]=21

  数组缩容: arr.length--     arr.length-n   arr.length=0;

JS不限制元素的数据类型    不限制元素的个数    不限制下标越界

按值传递:数组传递的是存储的位置

遍历:for(let i=0;i<arr.length;i++){console.log(arr[i])}

关联数组:arr=[]   arr['name']=1; 关联数组的长度0

遍历:for(let key in hash){

    key:下标

    hash[key]

   }

数组的API

1.String()

2.join()                                    join()和join(',')相同

3.concat()                               arr.concat(1,2,3)     arr.concat([1,2,3]):打散数组    返回新数组

4.slice()                                  arr.slice(start,end+1) 含头不含尾 

5.splice()                                arr.splice(start,n,)//不打散数组,修改原数组  返回被删除的数组

6.reverse()                              数组反转,不是反向排序

7.sort()                                    数组排序  arr.sort(function(a,b){return a-b})

8.push()                                  入栈,从尾部,不打散数组

9.pop()                                    出栈

10.shift()                                    

11.unshift()

12.forEach                             修改原数组 arr.forEach((val,index,arr)={})     不支持break

13.map                                  arr.map(function(val,index,arr)=>{})    返回新数组         不支持break

14.filter                                   arr.filter((val,index,arr)=>{})

15.reduce                               arr.reduce((prev,val,index,arr)=>{

              return prev+val

             },base)

16. every和some                   返回true或false

 

posted on 2018-11-12 20:06  沉默的末1993  阅读(121)  评论(0编辑  收藏  举报