1、let 和var都是定义变量,不同点,let作用于块作用域,如:if(true){ var a=2; let b=3} console.log(a) console.log(b) a =1 b=b is no defined let常常在for循环使用
2、const 定义常量,定义的常量的指向不能修改! 如 const TITLE=3 const TLTLE=2会报错
3、变量的解构赋值(数组):1、 var [a,b,c]=[1,2,3] 2、 var [a,…c] =[1,2,3] 结果:a=1 c=[2,3] 3、var arr=[1,2,3] var [a,b,c='default',d=3]=arr 结果:1、2、3、3 4、let [a,b,c]=[1,2] c的值没有,所以是undefined
4、变量的解构赋值(对象):待定
5、变量的解构赋值(其它):let {length}='str' 3 解构字符串: let [a,b,c]='str' s t r 函数的传参进行解构 如:
6、新增字符串方法:旧方法检测字符串是否存在某个字符如:‘hello’.indexOf('o')!==-1 true es6方法:‘hello’.includes('o') true 还有几个方法: startsWith某个字符开始 endsWith某个字符结束 repeat(3)重复多少次
7、模板字符串:
8、es6引入新的数据类型:Symbol es5有:undefined null boolean string number object
9、Set类似数组: