2016-02-25 48 views
1

在这个例子中,我如何获得for循环中的i var的值到guardarReserva()函数中?JS:我如何访问另一个函数内的函数内的变量值,并且这两个函数都属于同一个对象?

guardarReserva()和generarGrilla()是同一对myApp对象的这两种方法。

var myApp = { 
    generarGrilla:function(){ 
     for(var i=1; i<13; i++){ 
      var impresionGrilla = $('#grilla').append("one"); 
     }; 
    }, 
    guardarReserva:function(){ 
     var reservaConfirmada = $('#horario').append("two"); 
    }, 
+2

你的标题让我头疼 – j08691

+1

会怎样'我'在另一个中使用? – epascarello

+0

要为for循环中的每个结果中的每个div执行某些操作,请在第二个函数 – Rosamunda

回答

1

您需要定义的两种功能i外:

var myApp = { 
    i:0, 
    generarGrilla:function(){ 
     for(this.i=1; this.i<13; this.i++){ 
      var impresionGrilla = $('#grilla').append("one"); 
     }; 
    }, 
    guardarReserva:function(){ 
     var reservaConfirmada = $('#horario').append("two"); 
     console.log(this.i);//i is now accessible 
    }, 

您也可以使用全局变量:

var i; 
var myApp = { 
    generarGrilla:function(){ 
     for(i=1; i<13; i++){ 
      var impresionGrilla = $('#grilla').append("one"); 
     }; 
    }, 
    guardarReserva:function(){ 
     var reservaConfirmada = $('#horario').append("two"); 
     console.log(i);//i is now accessible 
    }, 
+0

有更好的解决方案,而不是全球化。 – epascarello

+1

你是对的 - 只需在那里修好! – millerbr

+0

属性值的一个缺点是,它们不能在成员初始化期间使用,如全局变量或闭包可以... – dandavis

相关问题