天天看点

arr扩展方法//数组的遍历//数组的其他方法

arr扩展方法

array.map 的用法

map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。

const arr =[1,2,3,4];
const newarr =arr.map(item=>item+2);
console.log(newarr);
           

array.filter()  过滤

--  filter() 不会对空数组进行检测。

--  filter() 不会改变原始数组。

const arr = [1,2,3,4,5,6,7];
 const newarr = arr.filter(item=> item%2==0);
 console.log(newarr);
           

array.reduce() "缩减" "累加器"

total 即是初始值又是返回值

reduce 第二个参数指定初始值

reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。 -- 对于空数组是不会执行回调函数的。

const arr = [1,2,3,4,5];
 let sum = arr.reduce((total,currentValue)=>{
       return total + currentValue;
 },10)
 console.log(sum);
           

fill填充

语法:array.fill(value, start, end)

Value:必需。填充的值。

Start:可选。开始填充位置。

End:可选。停止填充位置 (默认为 array.length)。

let arr = [1,2,3,4]
arr.fill('x',1,3);
console.log(arr)
           

 数组的遍历

for of遍历数组的值(遍历可迭代具备迭代器接口)

const arr = ['a','b','c','d']
for(let v of arr){
   console.log(v)
  }
           

for  in遍历索引(遍历可枚举类型)

const arr = ['a','b','c','d']
for(let k in arr){
  console.log(k)
  }



const Person ={realname:'张三',age:19};
for(let key of Person){
   console.log(key)
  }
           

"遍历对象" for of “遍历对象”

const Person ={realname:'张三',age:19}
const keys = object.keys(Person); //获得所有对象的keys
for(let k of keys){
   console.log(`k:${k},v:${Person[k]}`)
  }
           

forEach的用法

let arr = [1,2,3,4];
arr.forEach((item,index)=>{
  console.log(`v:${item},k:${index}`)
 })
           

数组的其他方法、

in 判断元素是否是数组(对象)的属性

判断对象 是否 数组的属性。

判断对象 是否 是 对象 的属性。

let arr = ["a","b","c",4];
let Person = {realname:"张三",age:19};
console.log(4 in arr);//false
console.log("realname" in Person);//true
           

arr.some 找满足条件的元素   找到则返回true  找不到则返回false

-- 如果有一个元素满足条件,则表达式返回*true* , 剩余的元素不会再执行检测。

-- some() 不会对空数组进行检测。

-- some() 不会改变原始数组。

-- 如果找不到返回flase。

let arr = [1,2,3,4];
let flag = arr.some(item=>item>2);
console.log(flag);
           

split把字符串  按照“分割符”转为数组

let str ='1-2-3';
let arr = str.split('-');
let str2 = arr.join(',');  //把数组按照“分隔符”链接成一个字符串
console.log(str2);
           

Array.of  负责把一堆文本转成数组

let a = 1;
let b = 2;
let c = 3;
console.log(Array.of(a,b,c));
           

继续阅读