【发布时间】:2021-12-25 03:29:16
【问题描述】:
所以我认为这是不可能的,但我想知道...... 有没有办法创建一个像这样工作的函数?
const someFunction=()=> console.log(a); //printing some ref that is not out of this scope;
const wrappedFn = wrapFnOnScope(someFunction,{a:"Hello World!"});
wrappedFn() // prints Hello World!
【问题讨论】:
-
您似乎在描述
this关键字的工作方式。你为什么不想要它呢? -
你以后可以做什么,但这不是基于范围。您只需通过调用传递对象,应用.. developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
-
@Keith - 如果我们认为 执行上下文 将
this的含义定义为属于词法上下文 - 它可以从字面上解释为范围事物。 -
@RandyCasburn 抱歉,不知道你在说什么。作用域就是作用域,与
this无关。 -
const wrappedFn = console.log.bind(console, {a:"hello"});有点接近
标签: javascript scope closures