<script type="text/javascript"> var number = 1900; var obj = { number: 1990, getNumber: function() { var f = ( a ) => a + 10; console.log(f(this.number)); //【1】 } } console.log(this.number); obj.getNumber (); </script>
时间: 2024-02-14 21:33:42 浏览: 23
这是一段 JavaScript 代码,它定义了一个变量 number 和一个对象 obj,obj 包含属性 number 和方法 getNumber。在 getNumber 方法中,使用箭头函数定义了变量 f,并将 obj 的 number 属性作为参数传入 f 中,然后输出 f(this.number) 的结果。
在全局作用域中,打印了变量 number 的值。接着调用了 obj 的 getNumber 方法,它输出了 f(this.number) 的结果,this 指向的是 obj 对象,因此输出的是 obj 的 number 属性值加上 10,即 2000。
相关问题
<script type="text/javascript"> var number = 1900; var obj = { number: 1990, getNumber: function() { var f = ( a ) => a + 10; console.log(f(this.number)); } } console.log(this.number); obj.getNumber (); </script>
这段代码使用 JavaScript 编写,它定义了一个变量 number 和一个对象 obj,这个对象包含一个属性 number 和一个方法 getNumber。在 getNumber 方法内部,它定义了一个箭头函数 f,它接受一个参数 a 并且返回 a + 10。然后它调用了 f 方法并且将 obj 对象的 number 属性作为参数传递进去,并将结果打印出来。
在最后一行,它调用了 obj 对象的 getNumber 方法。这个方法内部调用了箭头函数 f,并且将 obj 对象的 number 属性作为参数传递进去。最终输出结果是 2000,因为箭头函数 f 内部使用了 this 关键字,它指向了 obj 对象,所以 this.number 的值是 1990 而不是全局变量 number 的值 1900。
阅读全文