年纪越来越大了,经常写前端代码,备忘一下^.^
for循环:原生,常用格式为:for(let i = 0;i < length;i++){}
例子:
const arr = ["a","b","c"];
for(let i = 0;i < arr.length;i++){
console.log(arr[i]); //abc
}
forEach():没有返回值,动态修改key的值
let arr = [{id:1},{id:2},{id:3}];
arr.forEach(item => {
item.id = item.id + 1;
});
console.log(arr) // [{id:2},{id:3},{id:4}];
map():返回新的Array数组,不会改变原始数组,不会对空数组进行检测,需要return返回结果
let arr = [1,2,3];
let arr2 = arr.map((item) => {
return item + 1;
});
console.log(arr2); //[2,3,4];
filter():返回符合func条件的元素数组
let arr = [1,2,3];
let arr2 = arr.filter((item) => {
return item !== 1;
});
console.log(arr2); // [2,3];
some():返回boolean,判断是否有元素是否符合func条件
let arr = [1,2,3];
let arr2 = arr.some((item) => {
return item == 1;
});
console.log(arr2); //true ,表示数组里有符合的元素值
every():返回boolean,判断所有元素是否符合func条件
let arr = [1,2,3];
let arr2 = arr.every((item) => {
return item > 0;
});
console.log(arr2); //true 因为arr数组所有元素值都大于0
reduce():累加器,如数组求和
let arr = [1,2,3];
let arr2 = arr.reduce((item,current) => {
return item + current;
});
console.log(arr2); // 6
for in: 对象、数组啥数据都可以
let arr = [1,2,3];
for(let key in arr){
console.log(arr[key]); //123
}