[英]es6 declaring an function with brackets
我想用簡短的Synthax聲明以下函數,但是我總是回想一個錯誤,說“ VM831:9 Uncaught TypeError:Person不是構造函數(…)”我需要編寫函數嗎?
var Person = () => {
this.age = 0;
this.set = () => {
this.age++;
}
}
var p = new Person();
箭頭函數使用“詞法” this
,即它們始終從當前范圍繼承this
,而不是從new
運算符創建的this
繼承。
因此,它們不能用作構造函數。
函數不能具有構造函數。 因此,請改用ES6類。
class Person {
constructor(age) {
this.age = age;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.