JavaScript新特性
关键字 const
常量是一个不能被修改的变量。
变量可以被重写
常量重写会报错
关键字 let
JavaScript使用一对花括号表示代码块,花括号限定变量的作用域。
但是如果变量是在if/else
语句块中创建的,那么变量的作用域不会受到该代码块的限制。
备注:花括号不能限制变量作用域范围的另外一个地方是在循环体中
if语句块中的变量topic重制了全局变量topic的值
通过使用let
关键字,将变量的作用域限定在任意代码块中。
使用let关键字可以确保全局变量的值不受干扰。
模板字符串
JavaScript的任意返回值都可以被添加到模板字符串的${ }
的内部。
默认参数
ES6中添加了对默认参数的支持,如果事件调用过程没有提供参数,系统将使用默认参数值。
默认参数并不局限于字符串,可以是任意类型。
箭头函数
ES6中的箭头函数是非常有用的特性,用户在不使用function
关键字的情况下创建一个函数,并且用户通常还不需要使用return
关键字。
普通函数
var lordify = function (firstname){ |
箭头函数
var lordifyV2 = firstname => `${firstname} of Canterbury` |
备注:使用
箭头函数
创建方法,如果包含一个以上参数时,函数两边的圆括号是必不可少的。
ES6转译
并不是所有的浏览器都支持ES6,甚至有些根本不支持该规范。确保用户根据ES6规范编写的代码能正常工作的唯一办法是,在浏览器运行这些代码之前将它们转译符合ES5规范的代码。这个过程称为转译
。Babel
是当前最流行的转译工具之一。
ES6的对象和数组
解构赋值
解构赋值允许用户将某个对象内的字段作用域本地化,摒弃可以声明那些值是将要使用的。
例如对象sandwich,包含4个字断,我们只想使用其中两个字段段值。将其中bread
和meat
属性的作用域本地化。
var sandwich = { |
解构传入的函数参数
var lordify = rgularPerson =>{ |
在对象之外解构我们需要使用的值
var lordify = ({firstname})=>{ |
这里的
({firstname})
==var {firstname} = regularPerson
,【解构赋值】知识点。
对象语意增强
通过语意增强,从全局作用域获取变量并将它转换为一个对象。
var name = "Tallc"; |