2017-10-14 13 views
0

私は少しゲームを作ろうとしていますが、私は多くの経験がありません。また、私はこれはおそらく間違いなく、誰もがあなたがむしろ=より===を使用する必要が2番目の関数が機能しないのはなぜですか?

<a id="key">There is a key on the floor</a> 
<button onclick="keylol()">Pick it up</button> 

<a id="door">You see a locked door</a> 
<button onclick="doortext()">Try to open the door</button> 

<script> 
var key = 1 
function keylol() { 
document.getElementById("key").innerHTML = "You picked up the key"; 
var key = 2; 
} 

function doortext() { 
if (key = 1) { 
document.getElementById("door").innerHTML = "You cannot open a locked door"; 
} else { 
document.getElementById("door").innerHTML = "You opened the door hooray"; 
} 
} 
</script> 

答えて

1

素晴らしいことだ初心者のための何かを持っているので、もし、それを行うための最善の方法ではないことを知っている:

if (key === 1) { 
    ... 
} 
最初のものは、あなたがそれゆえ値 2がお尻ではない、 keylol機能の範囲内で keyという名前の新しい変数を再宣言しているということです

0

は、次の2つの誤りを犯しました外部変数keyに点火されます。

key変数をif句の中で比較するのではなく、再宣言するということです。

if(key === 1)key = 2if(key = 1)に変更var key = 2

var key = 1 
 

 
function keylol() { 
 
    document.getElementById("key").innerHTML = "You picked up the key"; 
 
    key = 2; 
 
} 
 

 
function doortext() { 
 
    if (key === 1) { 
 
    document.getElementById("door").innerHTML = "You cannot open a locked door"; 
 
    } else { 
 
    document.getElementById("door").innerHTML = "You opened the door hooray"; 
 
    } 
 
}
<a id="key">There is a key on the floor</a> 
 
<button onclick="keylol()">Pick it up</button> 
 

 
<a id="door">You see a locked door</a> 
 
<button onclick="doortext()">Try to open the door</button>

0

<a id="key">There is a key on the floor</a> 
 
<button onclick="keylol()">Pick it up</button> 
 

 
<a id="door">You see a locked door</a> 
 
<button onclick="doortext()">Try to open the door</button> 
 

 
<script> 
 
var key = 1 
 
function keylol() { 
 
document.getElementById("key").innerHTML = "You picked up the key"; 
 
key = 2; 
 
} 
 

 
function doortext() { 
 
if (key == 1) { 
 
document.getElementById("door").innerHTML = "You cannot open a locked door"; 
 
} else { 
 
document.getElementById("door").innerHTML = "You opened the door hooray"; 
 
} 
 
} 
 
</script>

関連する問題