Javascript给了我NaN,我不知道为什么



我希望punktzahl在点击" Kleine Straße (=button)&quot时增加5个点;我不再得到NaN作为punktzahl

这是我的代码(它是德语):

starteSpiel();
function starteSpiel() {
var Punktzahl = 0;
document.getElementById("punktzahl").innerText = Punktzahl;
}
function sonderKarte(Punktzahl) {
}
function Mittelwert(Punktzahl) {
document.getElementById("MittelwertAusgabe").toggleAttribute ("hidden");
}

function Chance(Punktzahl) {
document.getElementById("ChanceAusgabe").toggleAttribute ("hidden");
}
function VollesHaus(Punktzahl) {
}
function KleineStraße(Punktzahl) {
var KleineStraßePunkte = 5;
Punktzahl += KleineStraßePunkte;
document.getElementById("punktzahl").innerText = Punktzahl;
}
function GroßeStraße(Punktzahl) {
}
function Gleiche3(Punktzahl) {
}
function Gleiche4(Punktzahl) {
}
function Gleiche5(Punktzahl) {
}
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>TB_Würfelspiel</title>
<style>
body {
background-color: black;
color: aliceblue;
margin-left: 5vh;
}
.buttonAussehen {
display: flex;
flex-direction: column;
margin-top: 5px;
font-size: 10px;
}
.PunkteAusgabe{
display: flex;
flex-direction: row;
font-size: 15px;
}
</style>
</head>
<body>
<div>
<pre class="PunkteAusgabe">Du hast <span id="punktzahl" class="PunkteAusgabe"></span> Punkte erreicht! </pre>
<button class="buttonAussehen" id="Mittelwert" onclick="Mittelwert()">Mittelwert</button>
<button class="buttonAussehen" id="Chance" onclick="Chance()">Chance</button>
<button class="buttonAussehen" id="VollesHaus" onclick="VollesHaus()">Volles Haus</button>
<button class="buttonAussehen" id="KleineStraße" onclick="KleineStraße()">Kleine Straße</button>
<button class="buttonAussehen" id="GroßeStraße" onclick="GroßeStraße()">Große Straße</button>
<button class="buttonAussehen" id="Gleiche3" onclick="Gleiche3()">3 Gleiche</button>
<button class="buttonAussehen" id="Gleiche4" onclick="Gleiche4()">4 Gleiche</button>
<button class="buttonAussehen" id="Gleiche5" onclick="Gleiche5()">5 Gleiche</button>
<br>
<br>
<div id="MittelwertAusgabe" hidden>
<p id="ZahlErklärungMittelwert">Bitte gib den Mittelwert ein!</p>
<input type="number" id="MittelwertZahl">
</div>
<div id="ChanceAusgabe" hidden>
<p id="ZahlErklärungChance">Bitte gib alle Augenzahlen ein!</p>
<input type="number" id="ChanceZahl">
</div>
</div>
</body>
</html>

我正在开发我自己的骰子游戏,不知道为什么我被发布NaN。我在网上搜索了13天,也问了聊天GPT,但我没有找到任何可以帮助我的东西。

如果有人能帮助我,我会很高兴的。

当游戏发布时,这个人的用户名将被列为创作者!

您有一个这样定义的函数:

function KleineStraße(Punktzahl) {
var KleineStraßePunkte = 5;
Punktzahl += KleineStraßePunkte;
document.getElementById("punktzahl").innerText = Punktzahl;
}

然后这样命名为onclick="KleineStraße()"

该函数期望通过Punktzahl参数传递一个数字,而您没有传递任何东西给它。

要解决这个问题,你需要传递你想要的值,像这样:onclick="KleineStraße(1)"

然而,通读你的代码,看起来你可能对变量在函数中的工作方式不熟悉。你在一个函数中定义了一个变量,然后你在所有其他同名的函数中都有一个参数,即使你给它们起了相同的名字,它们也没有任何联系。我想这可能是你想写的:

//Define this variable out here so that all the functions can use it
var Punktzahl = 0;
function starteSpiel() {
document.getElementById("punktzahl").innerText = Punktzahl;
}
function sonderKarte() {
}
function Mittelwert() {
document.getElementById("MittelwertAusgabe").toggleAttribute ("hidden");
}

function Chance() {
document.getElementById("ChanceAusgabe").toggleAttribute ("hidden");
}
function VollesHaus() {
}
function KleineStraße() {
var KleineStraßePunkte = 5;
Punktzahl += KleineStraßePunkte;
document.getElementById("punktzahl").innerText = Punktzahl;
}
function GroßeStraße() {
}
function Gleiche3() {
}
function Gleiche4() {
}
function Gleiche5() {
}
//Call the function last, so that all the functions exist before it!
starteSpiel();
body {
background-color: black;
color: aliceblue;
margin-left: 5vh;
}
.buttonAussehen {
display: flex;
flex-direction: column;
margin-top: 5px;
font-size: 10px;
}
.PunkteAusgabe{
display: flex;
flex-direction: row;
font-size: 15px;
}
<div>
<pre class="PunkteAusgabe">Du hast <span id="punktzahl" class="PunkteAusgabe"></span> Punkte erreicht! </pre>
<button class="buttonAussehen" id="Mittelwert" onclick="Mittelwert()">Mittelwert</button>
<button class="buttonAussehen" id="Chance" onclick="Chance()">Chance</button>
<button class="buttonAussehen" id="VollesHaus" onclick="VollesHaus()">Volles Haus</button>
<button class="buttonAussehen" id="KleineStraße" onclick="KleineStraße()">Kleine Straße</button>
<button class="buttonAussehen" id="GroßeStraße" onclick="GroßeStraße()">Große Straße</button>
<button class="buttonAussehen" id="Gleiche3" onclick="Gleiche3()">3 Gleiche</button>
<button class="buttonAussehen" id="Gleiche4" onclick="Gleiche4()">4 Gleiche</button>
<button class="buttonAussehen" id="Gleiche5" onclick="Gleiche5()">5 Gleiche</button>
<br>
<br>
<div id="MittelwertAusgabe" hidden>
<p id="ZahlErklärungMittelwert">Bitte gib den Mittelwert ein!</p>
<input type="number" id="MittelwertZahl">
</div>
<div id="ChanceAusgabe" hidden>
<p id="ZahlErklärungChance">Bitte gib alle Augenzahlen ein!</p>
<input type="number" id="ChanceZahl">
</div>
</div>

相关内容

  • 没有找到相关文章

最新更新