关于数组方法 2020.06.06

一、数组

  

1. 数组的操作方法

  var a = [];

  - a.unshift()     /*在数组的开头添加一个或者多个元素,返回新长度;IE9+*/

  - a.shift()       /*删除数组中的第一个元素,返回删除的元素*/

  - a.push()        /*往数组的末尾添加一个或多个元素,返回新长度*/

  - a.pop()         /*删除并返回数组的最后一个元素*/

  - a.slice('start', 'end') /*不修改原数组,返回一个新数组*/

  - a.concat()      /*不修改原数组,返回一个新数组。不传参数时,复制数组;传参数时连接数组,可以有多个数组参数;*/

  - a.splice()      /*删除数组:两个参数,第一个是开始的位置,第二个是删除的长度

                插入元素:至少3个参数,第一个是开始的位置,第二个是0,后面是要插入的元素(可以有多个)

                替换元素:至少3个参数,第一个是开的位置,第二个是替换的个数,后面是要替换的元素*/

  - a.reverse()     /*反转数组*/

  - a.sort()        /*用特定的方法对数组进行排列,接收一个排序函数,该函数接收两个参数,

                如果第一个参数在前面,返回一个负数;如果第二个参数在前面,返回一个正数;如果两个参数相等,返回0*/

  - a.indexOf()     /*在数组中查找元素,两个参数,第一个参数时要查找的元素;第二个参数是要开始查找的位置(该参数可以没有)*/

  - a.lastIndexOf()     /*从数组的后面开始查找元素,与indexOf相同,只是查找方向不同*/

  - a.join()        /*把数组格式化成字符串,接收一个参数,即:分隔符。如果不传参数或传入undefined,则以逗号分隔*/

  - a.toString()        /*返回以逗号为分隔符的数组中的元素组成的字符串*/

  - a instanceof Array  /*检测是否为数组,如果是,返回true*/

  - Array.isArray(a)    /*检测是否为数组,如果是,返回true。IE9+*/
  - forEach(function (ele,index){console.log(ele,index)}); 方法:遍历数组,传入一个回调函数,里面有三个参数,第一个是元素值,第二个是索引,第三个是数组

  - every(function (ele){return ele > 20}); 传入一个回调函数,返回值是boolean类型值
var arr=[1,8,2,4,6,7,9,2,55,11,2,0,3];
var a=arr.erery(function(arr1){return arr1>3})//只要有元素小于3就是false
console.log(a);   //false     数组里只要有一个数字小于3就返回false

 

  - map(function (ele){return ele + 10}); 或 map(Math.sprt); 让数组中的每一个元素按照函数的方法去执行,返回一个新的数组

  - filter(functoon (ele){return ele < 50}); 起到过滤作用, 让数组中的每一个元素按照函数的方法去执行,把符合条件的元素放到一个新的数组中返回

  - eval(arr.join('+')); 如果数组中的每一项都是数字的话,用这个方法可以求数组中的数字之和
var arr = [2,3,5,8,10];
var a = eval(arr.join('+'));
console.log(a);    //28

2. 关于原数组
- 改变原数组的:

    - shift:将第一个元素删除并且返回删除元素,空即为undefined
    - unshift:向数组开头添加元素,并返回新的长度
    - pop:删除最后一个并返回删除的元素
    - push:向数组末尾添加元素,并返回新的长度
    - reverse:颠倒数组顺序
    - sort:对数组排序
    - splice:splice(start,length,item)删,增,替换数组元素,返回被删除数组,无删除则不返回

- 不改变原数组的:

    - concat:连接多个数组,返回新的数组
    - join:将数组中所有元素以参数作为分隔符放入一个字符
    - slice:slice(start,end),返回选定元素
    - map,filter,forEach,some,every等不改变原数组
posted @ 2020-06-06 15:30  歸寧歸零歸凝  阅读(54)  评论(0)    收藏  举报