4

ここで、私が作成したこの非常に単純なスクリプトに少し問題があります。このスクリプトの目的は、ボタンがクリックされるたびに、指定された数を1つ減らすことです。これを行うことができないようです。Number=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> 
4

2 に答える 2

7

はい、概念的にはこれは正しいです。少なくともNumberドキュメントに書き込む前は、関数を呼び出していないのはあなただけです。

ところで、コンストラクターNumberへのグローバル参照であるため、せいぜい小文字の別の変数名を使用する必要があります。Number

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でのデモ

于 2013-03-24T21:26:01.200 に答える
2

関数を呼び出す必要があります。

<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> 
于 2013-03-24T21:25:02.940 に答える