簡體   English   中英

從函數內改變全局變量

[英]Changing global Variable from within function

我寫這個非常簡單的腳本時遇到了一些問題。 此腳本的目的是在每次單擊按鈕時將給定數量減少一個。 我似乎無法做到這一點。我的全局變量是數字= 100似乎沒有變化,或改變不止一次..抱歉無法解釋這一點。 這是我正在努力的部分..:

<script>
  var Number = 100;        // Number i want changed and to keep changing each button click
  function outcome() {     // Button calls this function
    Number = Number - 1;   // Tries to change Global Number.. :/
  }
  document.write(Number);  // Has the Number written in the document
</script> 

是的,從概念上講這是對的。 只有您沒有調用該函數,至少在將Number寫入文檔之前。

順便說一下, NumberNumber構造函數的全局引用,所以你應該使用另一個變量名,最好是小寫。

var num = 100;
function outcome() {
    num--;
}
outcome();
document.write(num); // 99

要么

<script>
var num = 100;
function outcome() {
    num--;
    alert(num);
}
</script>
<button onclick="outcome()">Decrease!</button>

在jsfiddle.net上演示

你必須打電話給你的功能:

<script>
var Number=100    
function outcome(){ 
Number=Number-1 
}
outcome(); // call the function here
document.write(Number)  
</script> 

或者首先不要使用函數:

<script>
var Number=100    
Number=Number-1   
document.write(Number) 
</script> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM