批改状态:合格
老师批语:总结的不错, 继续加油
// * 2. 变量 let// 声明 + 初始化(第1次赋值)// let a// a = 100let a = 100console.log('a =', a)// 更新(第2次及以上的赋值)a = 200console.log('a =', a)// * 3. 常量 constconst USER_NAME = '张三'console.log('USER_NAME =', USER_NAME)// 常量禁止更新/*** var 三大硬伤* 1. 声明提升: 未声明可使用* 2. 重复声明: 声明式更新很奇葩* 3. 变量泄露: 不支持代码块*/

// ! 函数// * 1. 命名函数// 调用: 声明前,成功了,说明函数声明提升到了代码顶部console.log(sum1(3, 4))// 声明function sum1(a, b) {return 'a + b = ' + (a + b)}// 调用: 声明后console.log(sum1(1, 2))console.log('-------------')// ? 必须遵循"先声明,后使用"原则,声明提升违背了该原则// * 2. 匿名函数// const ,let 没有声明提升的效果// console.log(sum2(7, 8))const sum2 = function (a, b) {return 'a + b = ' + (a + b)}console.log(sum2(5, 6))console.log('-------------')// 以后, 首选匿名函数// * 3. 箭头函数// 匿名函数的语法糖(简化)// 语法: 删除function, (...)=>{...}let sum3 = (a, b) => {return 'a + b = ' + (a + b)}console.log(sum3(9, 10))// 只有一条return ,可不写 {...}sum3 = (a, b) => 'a + b = ' + (a + b)console.log(sum3(10, 11))// 只有一个参数, (...)也可不写sum3 = username => 'Hello, ' + usernameconsole.log(sum3('朱老师'))// 没有参数, (...)必须写sum3 = () => 'Hello, 王老师'// _ 也是一个合法变量标识符// sum3 = _ => 'Hello, 王老师'console.log(sum3())console.log('-------------')// ! 箭头函数与匿名函数的最大区别: 没有自己的this// * 4. 立即执行函数 (IIFE)// 一个语法,用 (...) 包住 就转为"表达式"let res = (function (a, b) {return 'a + b = ' + (a + b)})(60, 30)console.log(res)/*** * 1. 命名函数: 标识符* * 2. 匿名函数: 变量/常量* * 3. 箭头函数: 匿名函数语法糖* * 4. IIFE: 一次性,常用作模块或封装*/

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号