javascript - 在箭头函数中访问对象的参数
问题描述
在以下代码中,函数 MakeNode() 返回一个节点,其中包含提供给 MakeNode() 的参数。在节点内,有一个函数,一个箭头函数,它需要节点的变量之一。
我已经阅读了关于此的 ES6 js 文档。和范围。仍然找不到我的函数如何从它自己的对象访问变量。
我尝试通过以下方式访问它:
this.x
this.X
x
X
n.x
n.X
没有成功。实际代码:
function MakeNode(x, y) {
let n =
{
Parent: null,
X: x,
Y: y,
PrintXY: () => {
console.log("X, Y =", x, y);
}
}
return n;
}
//further, when called:
var aNode = MakeNode(10, 20);
aNode.PrintXY();
我希望打印语句是
X, Y = 10 20
但我得到:
X, Y = undefined undefined
无论我尝试以何种方式访问它,我也会收到以下错误:
TypeError: Cannot read property 'X' of undefined
解决方案
推荐阅读
- objective-c - 从自定义首选项窗格调用时,NSColorPanel 的关闭按钮不会出现在 MacOS Mojave 下
- csv - CSV file with non-English (Hebrew etc.)
- javascript - Match and replace a word not in quotes (string contains escaped quotes)
- javascript - Array of JSON to Tree-structure JSON of Array
- android - ExpandableListView 的替代方法
- java - 具有 Hibernate 多租户支持的 Spring Boot 应用程序
- python-3.x - 警告:使用 Selenium Chromedriver Python 启用跨站点请求伪造控制错误
- python - 在 pycharm 中打开 CSV 文件时出现错误
- android - 如何从 deployment_cert.der 文件计算 Facebook 的密钥哈希?
- xmpp - 如何在 Nativescript 中实现 XMPP 通信?