javascript中的计数和重置
这是我第一次使用StackOverflow。我在谷歌上搜索了这些问题,不知道如何应用于我的代码。我甚至使用了StackOverflow,但我肯定是遗漏了什么javascript中的计数和重置,javascript,Javascript,这是我第一次使用StackOverflow。我在谷歌上搜索了这些问题,不知道如何应用于我的代码。我甚至使用了StackOverflow,但我肯定是遗漏了什么 我希望count函数在正确猜测的情况下,为总数添加尝试次数 我想复位按钮,基本上重新开始一切,空输入等,就像它的声音 猜测: 检查 重置 theNumber=Math.floor(Math.random()*100) 尝试=[] 检查=函数(){ guess=document.querySelector(“#guess”).value
猜测:
检查
重置
theNumber=Math.floor(Math.random()*100)
尝试=[]
检查=函数(){
guess=document.querySelector(“#guess”).value;
如果(猜测==数字){
在“+tries.length+tries”中写下(“你猜对了!”+guess+”;
警惕(“你是对的!”)
}否则{
如果(猜测<数字){
document.write(“你太低了”+guess.fontcolor(“红色”);
文件。编写(尝试);
}否则{
结果=document.write(“你太高了”+guess.fontcolor(“蓝色”);
}
}
}
计数=函数(){
对于(var i=0;i可能是这样的()
var theNumber=Math.floor(Math.random()*100)
var=[];
var最大值=5;
检查=函数(){
guess=document.querySelector(“#guess”).value;
如果(猜测==数字){
document.querySelector(“#redv”).textContent=
“你猜对了!”+guess+“在”+tries.length+tries中”;
}else if(猜测<数字){
推({
价值:猜测,
方向:“低”
});
document.querySelector(“#redv”).textContent=“您太少了(尝试次数:“+tries.length+”)”;
}否则{
推({
价值:猜测,
方向:“高”
});
document.querySelector(“#redv”).textContent=“您太高了(尝试次数:“+tries.length+”)”;
}
如果(trys.length>=5){
document.querySelector(“#footer”).innerHTML=tries.map(函数(t,i){
返回“猜测”+(i+1)+:“+t.value+”(“+t.direction+”)
}).加入(“
”);
}
}
重置=函数(){
尝试=[];
document.querySelector(“#redv”).textContent=“”;
document.querySelector(“#footer”).innerHTML=“”;
}
这是我对你问题的工作解决方案。试试看:)
类猜测器{
构造函数(最小值、最大值){
该值为0;
this.rndNumber=Math.floor(Math.random()*(max-min+1)+min);
}
//如果答案正确,则返回true,否则返回false
答复(数目){
这个。递增尝试次数();
const isAnswerCorrect=number==this.rndNumber;
返回正确答案;
}
//为用户获取提示
getTip(编号){
返回编号>this.rndNumber
“您的号码更大”
:number{
inputNode.value='';
statusNode.value='';
tipNode.value='';
attemptsNode.value='';
};
//检查答案,按下“答案”按钮后更新UI上的字段
常量handleAnswer=(事件)=>{
//默认情况下,的值为字符串,
//所以我们应该把它转换成数字
const number=parseInt(inputNode.value);
//检查答案是否正确
const isCorrect=猜测者。答案(数字);
//为用户获取提示
const tip=guesser.getTip(数字);
//获取用户的尝试
常量尝试=guesser.getAttempts();
statusNode.value=isCorrect?'Correct':'error';
tipNode.value=尖端;
attemptsNode.value=尝试次数;
如果(不正确){
//禁用按钮,以防用户正确回答
answerButtonNode.disabled=真;
}
};
//重设形式和价值
常量handleReset=(事件)=>{
guesser.reset();
resetForm();
answerButtonNode.disabled=假;
};
answerButtonNode.addEventListener('click',handleAnswer');
resetButtonNode.addEventListener('click',HandlerReset);
输入您的号码:
答复
重置
答案是否正确:
提示:
尝试:
在check
函数中添加返回true;
或返回false;
。然后在重置中,执行if(check())…else…
并正确操作。不应使用document.write
var theNumber = Math.floor(Math.random() * 100)
var tries = [];
var maxTries = 5;
check = function() {
guess = document.querySelector("#guess").value;
if (guess == theNumber) {
document.querySelector("#redv").textContent =
"You guessed correctly! " + guess + " in " + tries.length + " tries";
} else if (guess < theNumber) {
tries.push({
value: guess,
direction: "low"
});
document.querySelector("#redv").textContent = "you are too low (number of tries: " + tries.length + ")";
} else {
tries.push({
value: guess,
direction: "high"
});
document.querySelector("#redv").textContent = "you are too high (number of tries: " + tries.length + ")";
}
if (tries.length >= 5) {
document.querySelector("#footer").innerHTML = tries.map(function(t, i) {
return "Guess # " + (i + 1) + ": " + t.value + " (" + t.direction + ")"
}).join("<br>");
}
}
reset = function() {
tries = [];
document.querySelector("#redv").textContent = "";
document.querySelector("#footer").innerHTML = "";
}