初识ES6
1、ECMAScript的官网地址:http://www.ecma-international.org/cma-262/6.0/,其是JS语言的下一代标准,已经在2015年6月正式发布,目标是让JS可以用来编写大型的复杂的应用程序,成为企业级开发语言;
2、JS开启严格模式:"use strict"(必须放在脚本第一行,否则无效),严格模式的目的是:消除JS语法的一些不合理、不严谨之处,减少一些怪异行为、在Node.js中ECMAScript6的某些语法只有在严格模式下才支持;
3、let作用:类似于var但是只在let命令的代码块内有效;
1).不存在变量提升,先声明后使用,否则报错;
2).块级作用于内let声明的变量不受外部的影响,可以定义外层作用域的同名变量;
3).不允许在相同作用域内重复声明一个变量;
4、const作用(主要用来声明全局变量):用来声明常量,一旦声明之后常量的值就不能改变;
1).同样具有块级作用域没有变量提升,先声明后使用不可以重复声明;
2).使用时只声明不赋值会报错,const指令指向变量所在的地址,所以对该变量进行属性设置是可以的;
5、字符串扩展:
1).includes(str)表示是否包含str,startsWith(str)、endWith(str)、repeat(num)表示将原字符串重复n次并返回;
2).增强版的字符串用反引号(``)作为标识,其中的空格、缩进均会被保留,可以使用${表达式}在模板字符串中嵌入表达式;
3).如果需要输出原生字符串可以使用:String.raw`字符串`;
6、箭头函数(lamda表达式):var f = v => v; 等同于 var f = function(v) { return v; };
1).箭头函数本质就是匿名函数,其内部的this对象绑定定义时所在的对象而不是使用时的所在的对象;
2).箭头函数不能当作构造函数,当使用new命令时会抛出异常;
3).其内部不能使用arguments对象,该对象在箭头函数内部不存在;