当前位置: 首页 > 面试题库 >

JavaScript ES6的箭头功能中的“ this”指的是什么?

陈胤
2023-03-14
问题内容

我在几个地方读到,主要的区别是“ this在箭头函数中按词法绑定”。一切都很好,但是我实际上不知道那意味着什么。

我知道这意味着它在定义函数主体的大括号范围内是唯一的,但是我实际上无法告诉您以下代码的输出,因为我不知道所指的this是什么,除非它指的是胖箭头函数本身…。似乎没有用。

var testFunction = () => { console.log(this) };
testFunction();

问题答案:

箭头函数捕获this封闭上下文的值

function Person(){
  this.age = 0;

  setInterval(() => {
    this.age++; // |this| properly refers to the person object
  }, 1000);
}

var p = new Person();

因此,要直接回答您的问题,this箭头函数内部的值将与分配箭头函数之前的值相同。



 类似资料:
  • 我偶然发现了这个代码。我一直在使用{}格式的箭头函数,这个()包装器是什么意思?

  • 问题内容: 可以有人,请解释以下内容: 我正在关注Dan Abramov的讲座并进行练习。 该代码工作正常,但是,当以下特定功能 用 大括号编写时,测试将失败。 相同的代码在 没有 大括号的 情况下也 可以正常工作。 这是JsBin。请从第31行开始。 问题答案: case ‘toggleTodo’ : return ( state.map( (one) => oneTodo( one, acti

  • 问题内容: 我已经在尝试使用ES6一段时间了,但是我遇到了一个小问题。 我真的很喜欢使用箭头功能,只要有可能,我都会使用它们。 但是,看来您无法绑定它们! 这是函数: 这是我要将功能绑定到的对象: 这就是我绑定的方式: 然后我可以打电话给: 哪个将输出此(对象): 凉!可爱!除非它不起作用。而不是输出对象,而是输出对象。 因此,我想知道:您可以绑定箭头功能吗?(如果是这样,如何?) 我已经在Goo

  • 本文向大家介绍箭头函数中this指向举例?相关面试题,主要包含被问及箭头函数中this指向举例?时的应答技巧和注意事项,需要的朋友参考一下 参考回答: //输出22 定义时绑定。

  • 关于箭头函数中this的指向问题 在箭头函数中,this引用的是定义箭头函数的上下文。示例代码按理来说应该打印两次window,但结果是一次window,一次obj。 问了好多个AI,AI给的结果都是打印两次window。

  • 问题内容: 我是ES6和React的新手,并且我不断看到箭头功能。为什么某些箭头函数在粗体箭头之后使用花括号,而另一些使用括号?例如: 与 谢谢你的帮助! 问题答案: 括号返回单个值,花括号执行多行代码。 您的示例看起来很混乱,因为它使用的是JSX,看起来像多个“行”,但实际上只是被编译为一个“元素”。 这里有一些其他例子,它们都做同样的事情: 您还会经常在对象文字周围看到括号,因为这是避免解析器