2016-02-25 25 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

相關問題