我有两个场景。第一个,当我将变量构造为constructor(var1, var2){this.var1 = var1; this.var2 = var2
时,它们在类的其余部分中未定义,例如test(){console.log(this.var1)}
。在另一个中,它记录正确的值。
class Rectangle {
constructor(height, width) {
this.height = height;
this.width = width;
}
test(){
console.log(this)
}
}
const p = new Rectangle(100, 200)
p.test() // => Rectangle { height: 100, width: 200 }
const token = "aaa"
class CatApi {
constuctor(token, format) { // only xml, html and src; src gives link in response.location header
this.token = token
if (format) {
this.format = format // string allowing xml, html, src and json; default is json
} else {
this.format = 'json'
}
}
test(){
console.log(this)
}
}
const cat = new CatApi(token, 'json')
cat.test() // => CatApi {}
发生了什么事?我做错了什么?
答案 0 :(得分:1)
你在第二堂课中拼错了constructor
。