Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取JavaScript';在函数中初始化的全局变量_Javascript - Fatal编程技术网

获取JavaScript';在函数中初始化的全局变量

获取JavaScript';在函数中初始化的全局变量,javascript,Javascript,我试图通过在构造函数中声明一个全局变量,然后在函数中用一个值初始化它来更改它的值。我正在尝试的与我在这里键入的代码非常相似。代码会执行,但不会打印任何内容。有人能告诉我发生了什么事吗 class Sample{ constructor(){ let joey =""; } fire(){ joey ="Yo"; console.log(joey); } } 当使用类时,使用“this”操作符并为“this”对象赋值,因为“let-joey”的作用域不是

我试图通过在构造函数中声明一个全局变量,然后在函数中用一个值初始化它来更改它的值。我正在尝试的与我在这里键入的代码非常相似。代码会执行,但不会打印任何内容。有人能告诉我发生了什么事吗

class Sample{
  constructor(){
    let joey ="";
  }

  fire(){
    joey ="Yo";
    console.log(joey);
  }
}

当使用类时,使用“this”操作符并为“this”对象赋值,因为“let-joey”的作用域不是全局的(请阅读“let”作用域)。见下文-

class Sample{
 constructor(){
    this.joey ="";
 }

 fire(){
    this.joey ="Yo";
    console.log(this.joey);
 }
}

变量
joey
不包含在
fire
的范围内

创建对象(在本例中为类
示例
的实例)时,可以使用
对象设置该对象的属性,因为它是对当前对象的引用。如果使用
let
var
,变量将包含在声明它的函数中(在本例中为
constructor

类示例{
构造函数(){
这个。乔伊=”;
}
火(){
这个;
console.log(this.joey);
}
}
让测试=新样本();
测试。火灾()使用“this”关键字在构造函数中声明全局变量

class Sample{
 constructor(){
    this.joey ="";
 }

 fire(){
    this.joey ="Yo";
    console.log(this.joey);
 }
}

joey属于全局类还是构造函数的示例类?您如何调用打印它(调用方法?)