2016-11-13 27 views
0

我不能找出我在做什麼錯爲什麼這個setInveral函數不工作?

function countNum(){ 
    let num=0; 
    function inner(){ 
      num++ 
      console.log(num); 
       } 
      } 

setInterval(countNum,1000) 
+0

加上'()'在countNum'的'結束 - 現在你定期執行外部分,而不是印刷的內部部分。 – vlaz

+0

你期待什麼結果? –

+0

我不知道你在做什麼。內部函數永遠不會在你的代碼中調用,所以不會有輸出。你每秒鐘都在調用外部函數。 – WakiMiko

回答

1

你們定義的功能,但不是要求

function countNum(){ 
    let num=0; 
    function inner(){ 
      num++ 
      console.log(num); 
       } 
       inner();///////////////////////////// 
      } 

setInterval(countNum,1000) 
+0

沒關係感謝我想通了我還做了什麼錯lol – Brandon

+0

'function countNum() { var num = 0; function inner() { num ++; console.log(num); } inner(); } setInterval(countNum,300);'正在工作。可能會讓我們一直工作 – saiyan

1

的setInterval()方法調用函數或計算在指定的時間間隔的表達式。

setInterval(function(){ alert("Hello"); 
countNum(); 
}, 3000); 

如果您的要求是執行內部函數。從countNum返回內部函數,並繼續像

function countNum(){ 
    let num=0; 
    return function(){ 
      num++ 
      console.log(num); 
       } 
      } 

setInterval(function(){ 
    var inner = countNum(); 
    inner(); 
}, 3000);