ES6 有哪些新的特性
默认参数
```
var link = function(height = 50, color = 'red', url = 'http://azat.co') {
...
}
```
箭头函数
var fn = arg1 => arg1 * 2多行字符串
var text = `this is
text模板表达式
```
var name = `Your name is ${first} ${last}`
```
Promise
new Promise((resolve, reject) => {
if (success) {
resolve(true)
}
else {
reject('error')
}
}块级作用的 let 和 const
let writableVariable = 1
const constantVariable = 2类
class Obj {
constructor (props) {
this.props = props
}
log () {
console.log(this.props)
}
}模块化
export const edit = () => console.log('edit')import { edit } from './edit.js'拆包表达式
```
let obj = { name: '', slug: '' }
let { name,: title slug } = obj
```
改进的对象表达式
首先,一个简单的JavaScript时间线,不了解历史的人也无法创造历史。
- 1995年:JavaScript以LiveScript之名诞生
- 1997年:ECMAScript标准确立
- 1999年:ES3发布,IE5非常生气
- 2000年-2005年:
XMLHttpRequest,熟知为AJAX,在如Outlook Web Access(2002)、Oddpost(2002)、Gmail(2004)、Google Maps(2005)中得到了广泛的应用 - 2009年:ES5发布(这是我们目前用的最多的版本),带来了
forEach/Object.keys/Object.create(特地为Douglas Crockford所造,JSON标准创建者) ,还有JSON标准。
历史课上完了,我们回来讲编程。
ES6中还有很多你可能都用不上(至少现在用不上)的可圈可点的特性,以下无特定顺序:
Math/Number/String/Array/Object中新的方法- 二进制和八进制数据类型
- 自动展开多余参数
For of循环(又见面了CoffeeScript)Symbols- 尾部调用优化
generator- 更新的数据结构(如
Map和Set)
评论已关闭