嵌套函数在JavaScript和变量范围内?

时间:2013-07-16 21:27:32

标签: javascript function scope

我有一个函数,其中变量在该函数中声明,我需要创建另一个将使用这些变量的函数,并且当我单击HTML文档上的按钮时将运行该函数,我是否创建了一个嵌套函数并调用它,如果怎么样?

2 个答案:

答案 0 :(得分:2)

function outer(some_var) {
  function inner() {
    alert(some_var);
  }
  document.getElementById("my_button").onclick = inner;
  // or
  document.getElementById("my_button").addEventListener("click", inner);
}

答案 1 :(得分:0)

JAVASCRIPT:

   function MyFunction_outer(){
    var local variable1=some_value;
    var MyFunction_inner=function(some_value){
    alert(some_value);
      }
    }

HTML:

//this is how call a function onclick.

      <div onclick="MyFunction_outer" >CLICK_ME</div>//for outer function
      <div onclick="MyFunction_inner" >CLICK_ME</div>//for inner function

这是你调用函数的方法。 如果您不想编写内联代码并污染HTML代码,也可以使用 addEventListener

使用addEventListener - :

document.getElementById('button_id').addEventListener("click",function({MyFunction_outer()},false)

OR

document.getElementById('button_id').addEventListener("click",function({MyFunction_inner()},false)