数组方法大全

一、array.length:数组

  • 设置或返回数数组中的元素的个数;
  • 设置length属性的值来截断任何数组;

二、Array.isArray():函数

  • 用于肯定传递非值是不是一个Array
  • Array.isArray([]) =>  true;
  • Array.isArray({}) =>  false;

四、Array.of():测试

  • Array.of(7) => [7]
  • Array.of(1, 2, 3) => [1, 2, 3]
  • Array(7) => [ , , , , , , ]
  • Array(1, 2, 3) => [1, 2, 3]

五、concat():this

  • 方法用于合并两个或多个数组,此方法不会更改现有数组,而是返回一个新的数组
  • var arr1 = ['1', '2']
  • var arr2 = ['3', '4']
  • var arr3 = ['5']
  • var arr4 = arr1.concat(arr2, arr3)
  • console.log(arr4) // ['1', '2', '3', '4', '5']   //arr4 is a new array

六、filter():spa

  • 建立一个新数组,其包含经过所提供函数所实现的测试的全部元素
  • var arr = [1, 10, 20, 30]
  • var ber = arr.filter((item) => {})
    • return item > 10
  • // [20, 30]

七、find():对象

  • 返回数组中知足提供的测试函数的第一个元素的值
  • function enf (num) {}
    • return num >= 15
  • [12, 5, 130, 45].find(enf)
  • // 130

八、findIndex():排序

  • 返回数值中知足提供的测试函数的第一个元素的索引
  • function enf (num) {}
    • return num >= 15
  • [12, 5, 130, 44].findIndex(enf)
  • // ‘3’

九、forEach():索引

  • 方法对数组的每个元素执行一次提供的函数
  • array.forEach(callback(currentValue, index, array) {})
    • // do something

十、includes():ip

  • 用来判断一个数组是否包含一个指定的值,若是是,酌情返回true或false
  • let a = [1, 2, 3]
  • a.includes(2)
  • // true
  • a.includes(4)
  • // false

十一、indexOf():element

  • 返回在数组汇总能够找到的一个给定元素的第一个索引,若是不存在,则返回-1
  • 当查找的元素在数组中有的话就返回元素在数组中对应的下标位置
  • 若是查找的元素在数组中并无的话就返回-1,全部没有的、找不到的返回的都是-1

十二、join():

  • 将数组(或一个类数组对象)的全部元素链接到一个字符串中
  • let a = [‘1’, ‘2’, ‘3’]
  • a.join(‘,’)
  • // 默认为“join(‘,’)”, 也能够直接join()
  • // ‘1, 2, 3’

1三、lastIndexOf():

  • 返回指定元素(也即有效的JavaScript值或变量)在数组中的最后一个的索引,若是不存在则返回-1.从数组的后面向前查找;

1四、map():

  • 建立一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果;

1五、pop():

  • 从数组中删除最后一个元素,并返回该元素的值,此方法会更新数组的长度
  • let a = [1, 2, 3, 4]
  • a.length // 4:是数组的长度
  • a.pop() // 4:是删除的那个元素

1六、push():

  • 将一个或多个元素添加到数组的末尾;

1七、reverse:

  • 方法将数组中元素的位置颠倒;

1八、shift():

  • 从数组中删除第一个元素,并返回该元素的值,此方法更新数组的长度;

1九、slice:

  • 返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象;

20、sort():

  • 从小到大对数组的元素进行排序,并返回数组;

2一、toLocaleString():

  • 返回一个字符串表示数组中的元素,数组中的元素将使用toLocaleSting方法转成字符串,这些字符串将使用一个特定语言环境的字符串(例如一个逗号‘,’)隔开:
  • var number = 1337
  • var date = new Date()
  • var myArr = [number, date, 'foo']
  • var str = myArr.toLocaleString()
  • console.log(str)
  • // 输出‘1, 337, 2017/8/13 下午8:32:24, foo’
  • // 假定运行在中文(zh-CN)环境,北京时区

2二、toString():

  • 返回一个字符串,表示指定的数组及元素;

2三、unshift():

  • 将一个或多个元素添加到数组的开头,并返回新数组的长度;

2四、copyWithin(target,start, end):

  • 浅拷贝数组的一部分到同一数组中的另外一个位置;

2五、every(callback):

  • 方法测试数组的全部元素是否都经过了指定函数的测试;

2六、fill():

  • 用一个固定值填充一个数组中从起始索引内的所有元素
  • arr.fill(value, start, end)
  • var numbers = [1, 2, 3]
  • numbers.fill(1)
  • //results in [1, 1, 1]

2七、array.from():

  • 对伪数组或可迭代对象(包括argument  Array,map,set,string...)转换成数组对象;
  • 语法:Array.from(arrayLike), mapFn、thisArg)
  • arrayLike:想要转换成数组的伪数组对象或可迭代对象;
  • mapFn(可选参数):若是指定了该参数,新数组中的每一个元素会执行该回调函数;
  • thisArg(可选参数):执行回调函数mapFn时this对象;
  • 返回值:一个新的数组实例;

2八、copyWithin(target,start,end):

  • 浅拷贝数组的一部分到同一数组中的另外一个位置

2九、every(callback):

  • 方法测试数组的全部元素是否都经过了指定函数的测试;

30、reduce():

  • 累加器和数组中的每一个元素(从左到右)应用一个函数
  • var total = [0, 1, 2, 3].reduce(function (sum, value) {}, 0)
    • return sum + value
  • // total is 6

3一、reduceRight():

  • 接收一个函数做为累加器和数组的每个值(从右到左)将其减小为单个值
  • let  flattened = [[0, 1], [2, 3], [4, 5]].reduceRight((a, b) => {}, [])
    • return a.concat(b)

3二、some():

  • 测试数组中的某些元素是否经过由提供的函数实现的测试
  • const isBiggerThen10 = (element, index, array) => {}
    • return element > 10
  • [2, 5, 8, 1, 4].some(isBiggerThen10)
  • // false
  • [12, 5, 8, 1, 4].some(isBiggerThen10)
  • // true
相关文章
相关标签/搜索