数组新增特性
- Array.of
{
let arr = Array.of(3,4,7,9,11);//Array.of 把一组数据变量转化成数组的作用
console.log('arr=',arr);
let empty=Array.of();
console.log('empty',empty);
}
打印结果:
arr= (5) [3, 4, 7, 9, 11]
index.min.js:1 empty []
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<!--<meta http-equiv="Content-Security-Policy" content="default-src *; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'; img-src * data: 'unsafe-inline'; connect-src * 'unsafe-inline'; frame-src *;">-->
<title>ES6实战</title>
</head>
<body>
<p>es6</p>
<p>慕课网</p>
<p>快乐动起来</p>
</body>
</html>
- Array.from
// 把伪数组转换成数组
{
let p=document.querySelectorAll('p');
let pArr=Array.from(p); //这里将p标签下的集合转换为数组
pArr.forEach(function (item) {
console.log(item.textContent);
})
//Array.from的第二种用法
console.log(Array.from([1,3,5],function (item) {return item*2}))
}
打印结果:
es6
慕课网
快乐动起来
(3) [2, 6, 10]
- fill
{
//数组的所有元素都换成一个值
console.log('fill-7',[1,'a',undefined].fill(7));
//将数组中从第1个开始到第三个(不包括第3个)结束换成7
console.log('fill,pos',['a','b','c','d'].fill(7,1,3));
}
打印结果:
fill-7 (3) [7, 7, 7]
fill,pos (4) ["a", 7, 7, "d"]
- keys values entries
{ //不兼容的情况下,不使用import 'babel-polyfill';时,keys values是会报错的
//keys返回数组所有下标的集合
for (let index of ['1','c','ks'].keys()){
console.log('keys',index);
}
//keys返回数组所有值的集合
for (let value of ['1','c','ks'].values()){
console.log('values',value);
}
//entries不存在兼容问题
for (let [index,value] of ['1','c','ks'].entries()){
console.log('values',value,index);
}
}
打印结果:
keys 0
keys 1
keys 2
values 1
values c
values ks
values 1 0
values c 1
values ks 2
- copyWithin
//在当前数组内部 将指定位置的成员复制到其他位置上
console.log([1,2,3,4,5].copyWithin(0,3,4));
//0是从哪个位置开始替换,3是我从哪个位置开始读取数据,4到哪个位置截止
console.log([1,2,3,4,5].copyWithin(0,3,5));
打印结果:
(5) [4, 2, 3, 4, 5]
(5) [4, 5, 3, 4, 5]
- find
{
//查找一个元素是否在数组中
//find的找只找到第一个符合条件的就停止了
//find返回的是查找的值
console.log([1,2,3,4,5,6].find(function(item){
return item>3
}));
//findIndex返回的是查找的下标
console.log([1,2,3,4,5,6].findIndex(function(item){
return item>3
}));
}
打印结果:
4
3
- includes
{
//是否包含某个数
console.log('number',[1,2,NaN].includes(1));
console.log('number',[1,2,NaN].includes(NaN));
}
打印结果:
number true
number true
网友评论