//将数组变量转换成数组类型
{
let arr = Array.of(3, 4, 7, 9, 11);
console.log('arr=', arr);//[3, 4, 7, 9, 11]
let empty = Array.of();
console.log('empty=', empty);//[]
}
//将集合传换成数组
{
let p = document.querySelectorAll('p');
let pArr = Array.from(p);
pArr.forEach(item => {
console.log(item.textContent);
});
console.log(Array.from([1, 3, 5], item => {
return item * 2
}));//[2,6,10]
}
//填充数组
{
console.log('fill-7', [1, 'a', undefined].fill(7));//[7,7,7]
//第一个参数:要填充的值;第二个参数:开始填充的下标;第三个参数:截止位置(从第二个参数对应的下标往后数,不包含第三个参数的下标)
console.log('fill-7', ['a', 'b', 'c'].fill(7, 1, 3));//["a", 7, 7]
console.log('fill-7', ['a', 'b', 'c', 'd', 'e', 'f'].fill(7, 1, 3));//["a", 7, 7, "d", "e", "f"]
}
//遍历
{
for (let index of ['a', 'b', 'c', 'd', 'e', 'f'].keys()) {
console.log('key=', index);
}
for (let index of ['a', 'b', 'c', 'd', 'e', 'f'].values()) {
console.log('value=', index);
}
for (let [index, value] of ['a', 'b', 'c', 'd', 'e', 'f'].entries()) {
console.log('index=', index, ' value=' + value);
}
}
//当前数组中的某个位置被其他位置的值覆盖
{
/**
* 第一个参数:要替换的下标
* 第二个参数:替换的值的下标
* 第三个参数:截止位置(不包含)
*/
console.log([1, 2, 3, 4, 5].copyWithin(0, 3, 4));//[4, 2, 3, 4, 5]
}
//查找find findIndex
{
let arr = [1, 2, 3, 4, 5, 6];
console.log(arr.find(item => {
//返回第一个满足条件的值(找到即停止,不会继续向后找)
return item > 3;
}));//4
console.log(arr.findIndex(item => {
//返回第一个满足条件的下标
return item > 3;
}));//3
}
//是否包含某个值 可以识别NaN
{
console.log([1, 2, NaN].includes(1));//true
console.log([1, 2, NaN].includes(NaN));//true
}
网友评论