JavaScript 进阶 38 -- ES6新增Array方法(from、find、findIndex、fill、includes)

在ES6中有些新增的方法还是挺实用,今天总结一下

数组 Array  

Array.from() :将一个类数组或者可遍历对象转换成一个真正的数组,原来就是数组的话则会复制一份。

类数组对象,最基本的要求就是具有length属性的对象。并且键名(索引)为非负整数,没有数组所具有的的方法。

【例】 类数组

var objc = {
    0 : "a0",
    1 : "a1",
    4 : "a4",
    length : 3
};
console.log(objc);//{ '0': 'a0', '1': 'a1', '4': 'a4', length: 3 }

//非类数组,没定义length属性
var objx = {
    0 : "a",
    1 : "b",
    4 : "c",
};
console.log(objx);//{ '0': 'a', '1': 'b', '4': 'c' }

 

【例 】 把类数组转为数组

let aryLike = {
    '0':'a',
    '1':'b',
    length:2
}

let res = Array.from(aryLike);
console.log(res);//[ 'a', 'b' ]

let res2 = Array.from(aryLike,(v,k)=>{
    return '2021'+ v
})
console.log(res2)//[ '2021a', '2021b' ]

 

Array.of();  把一个数组长度变成数组的值

//Array.of()  把一个数组变成数组的值
console.log(Array(3),Array(3).length);//[ <3 empty items> ] 3   这个3 是数组的长度
console.log(Array.of(3),Array.of(3).length);//[ 3 ] 1

 

find()方法:找到第一个符合条件的数组 并 返回 该成员,找不到返回undefined,

注意: find()方法不会更改原始数组

let students = [
    {
        id:1,
        name:'zs'
    },{
        id:2,
        name:'lisi'
    }
]
let student = students.find((v,i)=>{
    return v.id ===2 //v:值,i:key
})
console.log(student);//{ id: 2, name: 'lisi' }

 

fiindIndex()方法:找到第一个符合条件的数组 并 返回 该成员的索引,找不到返回-1

let arr = [10,20,33,21,40];
let index = arr.findIndex((v,i)=>{
    return v % 2 === 1 
});
console.log(index);//2

 

fill(); 填充(替换),第一个值:要填充的成员,第二个值,从下标处开始填充;第三个值:到该下标前结束不包含此下标

let arr2 = [1,2,3,4,5];
arr2.fill('a',1,3);
console.log(arr2)//[1,a,a,4,5]

 

includes();是否包含某个成员,返回 ture/false

//includes()是否包含某个成员,返回 ture/false
console.log([1,3,4,5].includes(3));//true

 

 

今天总结的这些是es6中新增的方法,之前也总结了Array数组方法,大家可以去 看看

前端 —— JavaScript 基础篇(8--- Array数组的常用方法(二))

前端 —— JavaScript 基础篇(6--- Array数组及常用方法)

 

 

 

好啦 这一篇先到这里。我的文章都是学习过程中的总结,如果发现错误,欢迎留言指出,我及时更正

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值