1.方法簡寫
在 Es6中已經支持 方法簡寫,一般情況下我們定義一個方法是這么寫:
~~~
var object = {
name: 'chen',
sayname:function(){
alert(this.name)
}
}
~~~
經過Es6的語法之后,我們可以這么寫:
~~~
let object = {
name:'chen',
sayname() {
alert this.name
}
}
~~~
定義對象的方法中有this時,不要使用箭頭函數:
~~~
let object{
name :'chen'
}
object.sayname = ()=>{alert this.name}
object.sayname();
~~~
箭頭函數中的this是指向外部作用域中的this,你在執行object.sayname()時,sayname的當前作用域是object,外部作用域是window,所以得到window。
**還有一點我們在外面給對象附加方法時不要使用方法簡寫**
~~~
let object = {
name:'chen',
}
object.sayname() {
alert this.name
}
~~~
語法錯誤
模板對象:
在Es5 中我們在字符串中拼接變量通常是用以下寫法:
~~~
var sayName = function (id) {
return 'ajax/a/'+id
}
console.log(sayName(50)) //ajax/a/50
~~~
在ES 6中我們可以這么寫 在一個${}里寫上變量 如:
~~~
let sayName = id=>`ajax/a/${id}`;
console.log(sayName(50)) //ajax/a/50
~~~
**注意:這里字符串不再使用單引號括起來,而是反引號,兩個長得非常像不要用錯**