gpt4 book ai didi

javascript - 我在 Javascript 中的 askQuestion() 函数总是将答案标记为错误

转载 作者:行者123 更新时间:2023-11-30 09:51:00 26 4
gpt4 key购买 nike

我在 CodePen 中的笔的链接 - http://codepen.io/PartTimeCoder/pen/WwMxEX?editors=0010

Javascript 在这里:

function randomNum(digits) {
return Math.floor(Math.pow(10, digits - 1) + Math.random() * 9 * Math.pow(10, digits - 1));
}

function askQuestion(digits) {
$(".result").html("");

var factor1 = randomNum(digits);
var factor2 = randomNum(digits);
var correctanswer = factor1 * factor2;
var answer = parseInt($(".answer").val(), 10);

console.log(correctanswer);

$(".question").html(factor1 + " × " + factor2);

var score = 0;

//Problem Starts Here
$(".check").click(function() {
if (correctanswer == answer) {
$(".result").html("Correct");
score += 1;
$(".score").html(score);
askQuestion(digits);
} else {
$(".result").html("Wrong");
score -= 1;
$(".score").html(score);
}
});
//Problem Ends Here
}

$(document).ready(function() {
$(".answer").hide();
$(".check").hide();

var digits = 0;

$(".digits-1").click(function() {
digits += 1;
});

$(".digits-2").click(function() {
digits += 2;
});

$(".digits-3").click(function() {
digits += 3;
});

$(".btn").click(function() {
$(".btn").hide();
$(".answer").show();
$(".check").show();
askQuestion(digits);
});
});

在评论之间是我认为的问题所在。例如,当它询问 4 x 9 而我输入 36 时,它仍然将其标记为错误。我不知道为什么要这样做。起初我虽然输入的信息可能仍然是一个字符串,所以我对它使用了 parseInt 但它仍然没有用。感谢所有帮助。提前致谢!

最佳答案

问题是您在 answer 变量中缓存了 $('.answer') 元素的初始值。当您执行 $('.answer').val() 时,它会保存当时的内容,因此如果用户之后更改他们的答案,它不会不会反射(reflect)在您的变量中。你想要做的是这样的:

// Rest of your code above
var answer = $(".answer");

console.log(correctanswer);

$(".question").html(factor1 + " × " + factor2);

var score = 0;

//Problem Starts Here
$(".check").click(function() {
// Don't check what is in the input until you're ready to use the value.
if (correctanswer == parseInt(answer.val(), 10)) {
$(".result").html("Correct");
score += 1;
$(".score").html(score);
askQuestion(digits);
} else {
$(".result").html("Wrong");
score -= 1;
$(".score").html(score);
}
});

关于javascript - 我在 Javascript 中的 askQuestion() 函数总是将答案标记为错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36535779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com