Javascript 如何从方法访问构造函数中声明的变量?
它给了我未定义的值,那么我如何才能得到“someVar”的值呢Javascript 如何从方法访问构造函数中声明的变量?,javascript,class,Javascript,Class,它给了我未定义的值,那么我如何才能得到“someVar”的值呢 X类{ 建造师(e){ this.someVar=e; } 方法(){ console.log(this.someVar); } }在构造函数中,让使用而不是: class X { constructor (e) { let someVar = e; } SomeMethod () { console.log(this.someVar); } } 我强烈建议学习更多
X类{
建造师(e){
this.someVar=e;
}
方法(){
console.log(this.someVar);
}
}
在构造函数中,让使用而不是:
class X {
constructor (e) {
let someVar = e;
}
SomeMethod () {
console.log(this.someVar);
}
}
我强烈建议学习更多关于javascript中变量作用域的知识。你可以咨询
另外,如果您想更多地了解javascript中的class
,请咨询
下面是一个完整的工作示例:
X类{
建造师(e){
this.someVar=e;
}
方法(){
console.log(this.someVar);
}
}
const obj=新X(“某些文本”);
obj.SomeMethod()代码>在JavaScript中,可以使用构造函数中的this
关键字声明对象字段。因此,您的someVar
只是构造函数范围内的局部变量
您需要这样做:
constructor (e) {
this.someVar = e;
}
你不能;它不是一个类属性,它是一个局部作用域变量。请看一下这一点:与Python中的方式相同——除了this
而不是self
。这是否回答了您的问题?
class X {
constructor (e) {
this.someVar = e; //Now, someVar is a proper field of any object instance of X
}
SomeMethod () {
console.log(this.someVar);
}
}