Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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_Ecmascript 6 - Fatal编程技术网

Javascript &引用;当我们在某处传递一个匿名函数时,";这";“丢失了”;。这是什么意思?

Javascript &引用;当我们在某处传递一个匿名函数时,";这";“丢失了”;。这是什么意思?,javascript,ecmascript-6,Javascript,Ecmascript 6,我正在学习有关Javascript和ES6的教程,在下面的示例中,我遇到了一个错误: “TypeError:无法读取未定义的属性'teamName'。” 导师解释道:“每当我们在代码库的某个地方传递匿名函数时,这个函数内部的值就会丢失!”他这是什么意思?this不应该保留进行调用的对象,这不是意味着team.teamName将返回Avengers?我很困惑。 另外,当我们使用.bind(this)时,如何解决这个问题 使用箭头函数(=>)如下所示。它们有助于保留调用函数的此 const team

我正在学习有关Javascript和ES6的教程,在下面的示例中,我遇到了一个错误:

“TypeError:无法读取未定义的属性'teamName'。”

导师解释道:“每当我们在代码库的某个地方传递匿名函数时,
这个
函数内部的值就会丢失!”他这是什么意思?
this
不应该保留进行调用的对象,这不是意味着
team.teamName
将返回
Avengers
?我很困惑。 另外,当我们使用
.bind(this)
时,如何解决这个问题

使用箭头函数(=>)如下所示。它们有助于保留调用函数的

const team = {
 members: ['Tony', 'Peter'],
 teamName: 'Avengers',
 teamSummary: function() {
    return this.members.map((member) => {

    return `${member} is a member of ${this.teamName}`;

  });

 }

};

team.teamSummary();

请阅读此文章,了解同一解决方案的更多修复方法

函数(成员){
如果您仍然有问题,请随意提问:)“不应该
保留进行调用的对象”,但是在类似
somefunction(回调){…callback();}的上下文中
调用
callback()的对象是什么?
?嘿,谢谢!我知道问题的解决方案。我只是想知道为什么它会显示错误。请阅读我在编辑文章中提到的博客。它会向你解释所有的事情
const team = {
 members: ['Tony', 'Peter'],
 teamName: 'Avengers',
 teamSummary: function() {
    return this.members.map((member) => {

    return `${member} is a member of ${this.teamName}`;

  });

 }

};

team.teamSummary();