es6常用的数组方法

es6常用的数组方法

一、数组类型判断
Array.isArray()
将数组作为参数传入,返回值为布尔值

let arr = [1,2,3]
let res = Array.isArray(arr) // true

二、伪数组转数组
…扩展运算符

let str = "hello";
let arr = [...str];
console.log(arr); // ["h", "e", "l", "l", "o"]

三、查找元素
find()和findlndex()
ES5中可以通过indexOf()和lastIndexOf()查找与特定值匹配的元素,
而ES6中的find()和findIndex()可以根据某个条件去查找匹配的元素。
参数为回调函数和回调函数的this值,
回调函数的参数同forEach(),分别为:元素,索引,数组本身。
find()返回查找的值,findIndex()返回查找的值的索引,两者都只返回第一个满足条件的值

let numbers = [1, 2, 3, 4, 5];
console.log(numbers.find(n => n > 3)); // 4
console.log(numbers.findIndex(n => n > 3)); // 3

includes()
includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。
语法: arr.includes(searchElement, fromIndex) fromIndex可选

[1, 2, 3].includes(2);     // true
[1, 2, 3].includes(4);     // false
[1, 2, NaN].includes(NaN); // true

四、数组遍历
forEach()
forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。
注意: forEach() 对于空数组是不会执行回调函数的。
语法: array.forEach(function(currentValue, index, arr), thisValue)
第一个参数:必填 。当前元素,第二个:可选。当前元素的下标,
第三个:可选。当前元素所属的数组对象

let arr = [1, 2, 3];
arr.forEach((item, index, arr) => {
    console.log(item) //1 2 3
})

map()

map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
map() 方法按照原始数组元素顺序依次处理元素。
注意: map() 不会对空数组进行检测。
注意: map() 不会改变原始数组。
语法: array.map(function(currentValue,index,arr), thisValue)

let arr = [1, 2, 3];
let newArr = arr.map((item, index, arr) => {
    return item * 2;
})
console.log(arr) // [1, 2, 3]
console.log(newArr) // [2, 4, 6]

filter()
filter可以过滤数组,包含满足条件的数组项,返回一个新数组

let arr = [1, 2, 3];
let newArr = arr.filter((item, index, arr) => {
    return item <= 2;
})
console.log(arr) // [1, 2, 3]
console.log(newArr) // [1, 2

some()
some返回布尔值,如果有一个满足条件的值则返回true

let arr = [1, 2, 3];
let result = arr.some((item, index, arr) => {
    return item < 2;
})
console.log(result) // true

every()
every返回布尔值,如果所有数组项都满足条件则返回true

let arr = [1, 2, 3];
let result = arr.every((item, index, arr) => {
    return item < 2;
})
console.log(result) // false
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值