javascript - 在自执行函数中访问阴影变量

标签 javascript function scope self-executing-function

在下面的示例中,是否有任何方法可以从 someFunction 内部获取对在 someFunction 外部声明的 someValue 变量的引用,或者它是完全被函数的同名参数所掩盖。我很感激我可以将它附加到窗口并使用 this 从函数内访问它,但是在这种情况下有没有办法访问它?

[编辑] 澄清。我知道该参数正在隐藏变量。显然更改参数的名称将消除此问题。我的问题是在这种情况下是否有任何方法可以访问变量。

(function($){

   var someValue = 41;

   function someFunction(someValue) {

      console.log(someValue); //= 22

   }

   someFunction(22);


}(jQuery));

最佳答案

您似乎故意隐藏变量,然后尝试获取其值。只需给它一个不同的名称或重命名您的参数。

   var someValue = 41;
   function someFunction(myParameter) {
      console.log(someValue); // someValue == 41
   }
   someFunction(22); // logs 41

关于javascript - 在自执行函数中访问阴影变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13761271/

相关文章:

javascript - 在 PhantomJS 中运行 Javascript 自定义函数

javascript - node.js:readLine 但最后一行未保存在数组中

javascript - 无论我的访问者滚动页面有多远,如何使 DIV 停留在屏幕顶部?

javascript - 避免重新绑定(bind)函数引用中的递归

javascript - 如何从 ng-repeat 内部获取 var 并将其传递给 Controller ​​,而不是将其传递回 ng-repeat

javascript - 如何在解构赋值语法中使用特殊字符(如连字符)?

function - 语法错误 : Non-declaration statement outside function body

c - 我的 C 递归有什么问题?

c++ - 在 C++ 的构造函数中将字符串文字分配给成员 const char* 变量时会发生什么?

ruby-on-rails - CanCan的accessible_by(抓取记录)中的current_ability是什么?