diff --git "a/\350\224\241\347\216\256\351\223\255/20241203 \350\264\255\347\211\251\350\275\246\346\225\210\346\236\234/20241203 \350\264\255\347\211\251\350\275\246\346\225\210\346\236\234.md" "b/\350\224\241\347\216\256\351\223\255/20241203 \350\264\255\347\211\251\350\275\246\346\225\210\346\236\234/20241203 \350\264\255\347\211\251\350\275\246\346\225\210\346\236\234.md" new file mode 100644 index 0000000000000000000000000000000000000000..4533024fc31daefe15c4e6d2b85d3417979e9194 --- /dev/null +++ "b/\350\224\241\347\216\256\351\223\255/20241203 \350\264\255\347\211\251\350\275\246\346\225\210\346\236\234/20241203 \350\264\255\347\211\251\350\275\246\346\225\210\346\236\234.md" @@ -0,0 +1,310 @@ +## 课堂笔记 + +#### **函数参数** + +```javascript +// 动态参数 +function getSum() { + console.log(arguments); + let sum = 0; + for (let i = 0; i < arguments.length; i++) { + sum += arguments[i]; + } + return sum; +} +let sum = getSum(1, 2, 3, 4, 5, 6, 7, 8, 9); +console.log(sum); + +// 剩余参数 +function getSum(...arr) { + console.log(arr); +} +getSum(1, 2, 3, 4); +getSum(1, 2, 3, 4, 5, 6, 7); + +// 展开运算符 +const arr1 = [1, 2, 3, 4]; + +// 求最值 +console.log(Math.max(...arr1)); +console.log(Math.min(...arr1)); + +// 数组合并 +const arr2 = [5, 6, 7, 8, 9, 10]; +const arr = [...arr1, ...arr2]; +console.log(arr); + +// 箭头函数 +const fn1 = () => { + console.log(123); +}; +fn1(); +const fn2 = (x) => { + console.log(x); +}; +fn2(5); +// 箭头函数只有一个参数时括号可以省略 +const fn3 = (x) => {}; +// 只有一行代码时可以省略大括号 +const f4 = (x) => console.log(x); +// 有返回值可直接返回 +const f5 = (x) => x + x; +// 直接返回一个对象 +const f6 = (x) => ({ + a: 1, + b: 1, +}); +``` + +#### **解构** + +```javascript +// 交换变量 +let num1 = 10; +let num2 = 30; +[num1, num2] = [num2, num1]; + +const objArr = [{ age: 18 }, { age: 20 }]; +// 解构 +const [{ age }, { age: uAge }] = objArr; +// 遍历对象里面的值 +Object.values('对象') +``` + +#### **数组方法** + +```javascript +// 数组.forEach(function (当前元素, 当前索引) {方法体}); +arr.forEach(function (item, index) { + console.log("元素:" + item + '->>' + "索引:" + index); +}); + +// 用于筛选数组中符合条件的元素,并返回筛选后的数组。 +arr.filter(function (item, index) { + // 筛选大于 30 的元素 + return item >= 30; +}); + +// 返回累计处理的结果,经常用于求和等 +arr.reduce(function (prev, cur) { + return prev + cur; +}, 0); + +// 返回符合条件的第一个数组元素值,若不存在则返回 undefined 值 +const name = obj.find(function (ele) { + // 返回数组元素即 ele + return ele.name === "vivo"; +}); +console.log(name); + +// 所有元素是否都满足指定条件,若数组内所有元素都满足条件返回 true 否则返回 false 值 +const b = arr.every((ele) => ele > 5); +console.log(b); // false + +// 查找满足条件的第一个元素,并返回其下标。 +arr.findIndex(元素) +``` + +## 课后作业 + +#### **购物车效果** + +```html + + + +
+ + + +