<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>let 使用注意事项和细节</title><script type="text/javascript">// let 细节1// (1) let 声明的变量, 在代码块中,则作用域在代码块中// (2) var声明的变量, 在代码块中,作用域没有限制{var name ="韩顺平教育";let job ="java工程师";console.log("name=", name);console.log("job=", job);}console.log("name=", name);//console.log("job=", job);//job is not defined// let 细节2// 1. var 可以声明多次// 2. let 只能声明一次var num1 =100;var num1 =200;console.log(num1);let num2 =600;//Syntax => 语法//let num2 = 900;//Uncaught SyntaxError: redeclaration of let num2console.log(num2);// let 细节3// 1. let 不存在变量提升// 2. var 存在变量提升console.log("x=", x);//undefinedvar x ="tom";//can't access lexical declaration 'z'console.log("z=", z);let z ="mary";</script></head><body></body></html>
数组赋值解构
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>数组解构赋值</title><script type="text/javascript">let arr =[1,2,3];//如果要看某个变量的类型console.log("arr=>", arr);//数组解构[取出元素]//1.传统let x = arr[0], y = arr[1], z = arr[2];console.log(x, y, z);//2. ES6风格let [a, b, c]= arr;console.log("==================================");console.log(a, b, c);let [num1, num2, num3]=[100,200,300];console.log(num1, num2, num3);</script></head><body></body></html>
箭头函数
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>箭头函数的使用</title><script type="text/javascript">// 传统定义函数var f1 = function (n){return n *2}console.log("传统= "+f1(2))// ES6 , 箭头函数使用let f2 =(n)=>{return n *2;}console.log("f2() 结果= ",f2(100));//200//上面的es6 函数写法,还可以简化let f3 = n => n *3;console.log("f3() 结果=",f3(100));//300//函数也可以传给一个变量=> 看看java基础匿名内部类function hi(f4){console.log(f4(900));}hi((n)=>{return n +100});hi((n)=>{return n -100});</script></head><body></body></html>
箭头函数2
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>箭头函数使用案例2</title><script type="text/javascript">// 传统var f1 = function (n, m){var res =0for(var i = n; i <= m; i++){res += i}return res}console.log("传统= "+f1(1,10))// ES6 , 箭头函数使用let f2 =(n, m)=>{var res =0for(var i = n; i <= m; i++){res += i}return res};console.log(f2(1,10));</script></head><body></body></html>
//定义对象,变量,常量, 函数const sum = function (a, b){returnparseInt(a)+parseInt(b);}const sub = function (a, b){returnparseInt(a)-parseInt(b);}let name ="韩顺平教育";constPI=3.14;const monster ={name:"牛魔王",age:500,hi(){console.log("hi 你好 牛魔王");}}//es6的导出模块/数据/*** 老师解读* 1. export 就是导出模块/数据* 2. 可以全部导出,也可以部分导出*/
export {sum,sub,name,monster
}
//定义对象,变量,常量, 函数//定义sum函数时,就直接导出//老韩说明:如果在定义时,导出的数据, 在导入时,要保持名字一致
export const sum = function (a, b){returnparseInt(a)+parseInt(b);}const sub = function (a, b){returnparseInt(a)-parseInt(b);}let name ="韩顺平教育";constPI=3.14;const monster ={name:"牛魔王",age:500,hi(){console.log("hi 你好 牛魔王");}}