我知道“this”如何在浏览器上下文中工作,以及它在不同情况下的值如何变化,例如使用箭头函数如何调用函数。在node.js和浏览器中的函数上下文(this)之间的区别
我打印出“此”,在为节点的js不同的场景(快递JS,更具体),并且它含有更大量的数据 - 包括路径名等
我的问题是:
1 。关于'this'的规则与node.js完全一样吗?
2.有没有人可以解释node.js'这个'对象的属性或者指向一个简单的文章。
谢谢!
我知道“this”如何在浏览器上下文中工作,以及它在不同情况下的值如何变化,例如使用箭头函数如何调用函数。在node.js和浏览器中的函数上下文(this)之间的区别
我打印出“此”,在为节点的js不同的场景(快递JS,更具体),并且它含有更大量的数据 - 包括路径名等
我的问题是:
1 。关于'this'的规则与node.js完全一样吗?
2.有没有人可以解释node.js'这个'对象的属性或者指向一个简单的文章。
谢谢!
浏览器中的this
与node.js没有不同的规则。规则由ECMAScript标准设置,浏览器的Javascript实现和node.js中的实现遵循相同的ECMAScript标准。
您可能正在查看的是某个特定上下文中this
的“默认”值。在浏览器中,您可能正在查看this
的默认值,该值可能是window
对象。在node.js中,如果您看到文件名,您可能会将模块句柄视为this
或global
对象的默认值。
为了更具体地帮助您,我们需要在每个环境中查看您正在检查this
的值的位置处的代码,并且还要知道您是否在严格模式下运行。
在大多数情况下,this
仅用于默认值,而不用于this
值设置为的特定对象。例如,如果要调用类似:
obj.method();
然后,method
里面执行,JavaScript解释器将在this
值设置为obj
。这是Javascript的面向对象特性的一部分。
This this
object is global
object is in the context。在节点是process
对象。
是的。 NodeJS只是JavaScript的一个运行时,所有JavaScript的规则应用完全一样...... – Li357
*“任何人都可以解释node.js'这个'对象属性或指向我一个简单的文章。'*我讨厌说它,但这意味着“有人可以为我写谷歌并写出摘要?” – Tomalak