<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>数组的方法</title>
<script>
const arr = [1, 2, 3, 4, 5];
/*
* map()
* - 可以根据原有数组返回一个新数组
* - 需要一个回调函数作为参数,回调函数的返回值会成为新数组中的元素
* - 回调函数中有三个参数:
* 第一个参数:当前元素
* 第二个参数:当前元素的索引
* 第三个参数:当前数组
*
* filter()
* - 可以从一个数组中获得符和条件的元素
* - 会根据回调函数的结果来决定是否保留元素,true保留,false不保留
*
* find()
* - 可以从一个数组中获得符和条件的第一个元素
*
* reduce()
* - 可以用来合并数组中的元素
* - 需要两个参数:
* 回调函数(指定运算规则)
* 四个参数:
* prev 上一次运算结果
* curr 当前值
* index 当前索引
* arr 当前数组
* 初始值
* - 用来指定第一次运算时prev,如果不指定则直接从第二个元素开始计算
* */
let result = arr.map((item) => {
return item + 2;
});
result = arr.map((item, index, array) => {
return item + 2;
});
// console.log(result);
const arr2 = ['孙悟空', '猪八戒', '沙和尚'];
/*
* <li>孙悟空</li>
* <li>猪八戒</li>
* <li>沙和尚</li>
* */
result = arr2.map(item => "<li>" + item + "</li>");
result = arr.filter(item => item % 2 === 0);
result = arr.find(item => item % 2 === 0);
result = arr.reduce((prev, curr, index) => {
console.log(index, prev, curr);
return prev + curr
},0);
console.log(result);
</script>
</head>
<body>
</body>
</html>