<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>数组扩展运算符</title>
</head>
<ul id='#oUl'>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<body>
<script type="text/javascript">
let arr = [1,2,3];
let arr2 = [...arr]; //...
console.log(arr);
console.log(arr2);
let strName = 'jiangfei';//类数组:只要具备length就比较靠谱 json在后面必须加入length
console.log([...strName]);
console.log([].slice.call(strName));
console.log(Array.from(strName));
let json = {
0:"apple",
1:"banner",
2:"orange"
}
let json2 = {
0:"apple",
1:"banner",
2:"orange",
length:3
}
let json3 = {
0:"apple",
1:"banner",
2:"orange",
length:2
}
console.log(Array.from(json));
console.log(Array.from(json2));
console.log(Array.from(json3));
console.log([].slice.call(json3));
/*console.log([...json2]);*/
/*
* arr.keys()每个元素的索引 arr.entriers()所有元素包括索引 ES6数组的特性
* */
let oUl = document.querySelectorAll('ul li');//伪数组
let arr3 = [].slice.call(oUl);//将伪数组转换为数组 es5 [].slice.call(伪数组)
let arr4 = Array.from(oUl);//将伪数组转换为数组 es2015 Array.from(伪数组)把类数组(获取一组元素、arguments...)对象转换为数组
let arr5 = [...oUl];//将伪数组转换为数组 es6 [...伪数组]
console.log(oUl);
console.log(arr3);
console.log(arr4);
console.log(arr5);
function show(){
console.log(arguments);
console.log(arguments[0]);
console.log(arguments[1]);
console.log(arguments[2]);
let arr6 =[...arguments];
console.log(arr6);
console.log(Array.from(arguments));
console.log([].slice.call(arguments));
console.log(arguments.length);
}
show(1,2,3,4,5)
//Array.of()将一组值转成数组 感觉没啥用
let strAdd = "'sdgfsagraehdfh','sdgfsagraehdfh'";
let arr7 = Array.of('aaaa','bbbb','cccc');
let arr8 = Array.of(strAdd);
console.log(arr7);
console.log(arr8);
//arr.find(function(val,index,arr){return});查找出第一个符合条件的数组成员,如果没有找到,返回undefined;
let arr9 = [23,12,101,199];
let res = arr9.find((val,index,arr9)=>{
return val>100;
});
console.log(res);
let arrVal = arr9.find(function(val,index,arr9){
return val>100;
})
console.log(arrVal);
//arr9.findIndex((val,index,arr9)=>{return val>100;}) 查找出第一个符合条件的数组成员,并返回他的位置,如果没有找到,返回undefined;
let arrIndex = arr9.findIndex((val,index,arr9)=>{
return val>100;
})
console.log(arrIndex);
//arr.fill(填充的东西,开始位置,结束位置) 包括起始位置,不包括结束位置
let arr10 =new Array(10);
arr10.fill('默认值',2,5);
console.log(arr10)
//arr.includes()判断数组中是否存在指定的元素 返回值为ture/false
console.log(arr.includes(1));
</script>
</body>
</html>