2016-05-27 92 views
1

任何人都知道爲什麼在setTimeout(「progressBar(」+ val +「)」,300);,我們必須在val旁邊加上+?像這樣+ val +。我從網站上覆制這段代碼。你能解釋我嗎?謝謝Progress Bar Javascript(HELP!)

function progressBar(val){ 
    var pro_bar = document.getElementById("progress_bar"); 
    var stat = document.getElementById("status"); 
    stat.innerHTML = val + "%"; 
    pro_bar.value = val; 
    val++; 
    var load = setTimeout("progressBar("+val+")",300); 
     if(val == 100){ 
      stat.innerHTML = "100%"; 
      pro_bar.value = 100; 
      clearTimeout(load); 
      document.getElementById("text").innerHTML = "Process Complete"; 
     } 
    }  
    var initial_value = 0; 
    progressBar(initial_value); 

回答

0

JavaScript中的+可用於字符串連接。

例如

  • "This " + "That"結果:"This That"(兩串接合在一起)
  • "This " + 1結果:"This 1"(的int將被轉換爲字符串,並接合)
  • var varName = "A value"; "This " + varName結果:"This A value"(變量的值將是添加到字符串中)

在您發佈的情況下,該字符串將導致progressBar()被稱爲val的變量傳入。

+0

這是+ val + not + val – Kristian

+0

這與多個字符串一樣。例如''1「+」2「+」3「'第二個'+'就是在你的例子中加入'')」'''。 – DBS

+0

好的。我已經明白了。謝謝DBS – Kristian