Javascript 我知道这个代码不起作用,为什么我找到的代码起作用?是什么使错误的代码,错误的?
这是一些编码书中的一些练习。目标是使用for循环和jQuery在不同的行上打印朋友的名字;但每次我打开它,页面就会变得没有响应。我想知道详细的原因 这是不起作用的代码:Javascript 我知道这个代码不起作用,为什么我找到的代码起作用?是什么使错误的代码,错误的?,javascript,jquery,html,Javascript,Jquery,Html,这是一些编码书中的一些练习。目标是使用for循环和jQuery在不同的行上打印朋友的名字;但每次我打开它,页面就会变得没有响应。我想知道详细的原因 这是不起作用的代码: var friendsName = prompt("enter a friends name"); for(friendsName; friendsName !== null;){ $("body").append("<p>" + friendsName + "<p>"); } var-fr
var friendsName = prompt("enter a friends name");
for(friendsName; friendsName !== null;){
$("body").append("<p>" + friendsName + "<p>");
}
var-friendsName=prompt(“输入朋友姓名”);
for(friendsName;friendsName!==null;){
$(“正文”)。追加(“”+friendsName+””);
}
这是执行以下操作的代码:
for(var listYourFriends;listYourFriends !== null;listYourFriends = prompt("enter a friends name"))
{
if(listYourFriends !== undefined){$("body").append("<p>" + listYourFriends + " smells" + "</p>");
}
else if( listYourFriends === null){
break;
}
}
for(var listYourFriends;listYourFriends!==null;listYourFriends=prompt(“输入朋友姓名”))
{
如果(listYourFriends!==未定义){$(“body”).append(“”+listYourFriends+”气味“+””);
}
else if(listYourFriends==null){
打破
}
}
但是现在我得到了答案,我不知道为什么这段代码有效,而另一段代码无效。另一个,虽然它确实给我敲响了警钟,但在我看来,它应该是有意义的。有人能解释一下两者的区别吗?您的代码将进入无限循环,因为条件
friendsName!==对于for
循环,null
永远不会得到false
。例如,当您在提示符中输入某个名称时,该名称将不会再次更改,并在整个代码中保持不变
您需要在每个循环中使用新值更新friendsName
var-friendsName=prompt(“输入朋友姓名”);
对于(friendsName;friendsName!==null;){
$(“正文”)。追加(“”+friendsName+””);
friendsName=提示(“输入朋友姓名”);
}
您的代码将进入无限循环,因为条件friendsName!==对于for
循环,null
永远不会得到false
。例如,当您在提示符中输入某个名称时,该名称将不会再次更改,并在整个代码中保持不变
您需要在每个循环中使用新值更新friendsName
var-friendsName=prompt(“输入朋友姓名”);
对于(friendsName;friendsName!==null;){
$(“正文”)。追加(“”+friendsName+””);
friendsName=提示(“输入朋友姓名”);
}
非工作代码在哪里?。在每个循环中对for
循环的最后一部分求值。如果您将其留空,它将“第一次”得到计算,这就是为什么您最终会得到一个无限循环。非工作代码在哪里?。在每个循环中对for
循环的最后一部分求值。如果您将其留空,它将“第一次”得到计算,这就是为什么您最终会得到一个无限循环。不应在for循环中重复提示,只需在for中输入condition@HienNguyen您所说的“输入条件”是什么意思?这更适合于(var listYourFriends;listYourFriends!==null;listYourFriends=prompt(“输入朋友名称”))所以基本上,不工作的代码将进入一个无限循环,反复打印相同的名称?谢谢你,你的回答很简单helpful@HienNguyen是的,我知道,但问题不是更好的代码。问题在于理解。在OP的try中,变量在外部声明。我不想把变量的声明和更新放在for
循环中,从而混淆OP。你说的代码已经在问题中了。我只是想传达OP应该更新变量。不应该在for循环中重复提示符,而应该在for循环中重复提示符condition@HienNguyen您所说的“输入条件”是什么意思?这更适合于(var listYourFriends;listYourFriends!==null;listYourFriends=prompt(“输入朋友名称”))所以基本上,不工作的代码将进入一个无限循环,反复打印相同的名称?谢谢你,你的回答很简单helpful@HienNguyen是的,我知道,但问题不是更好的代码。问题在于理解。在OP的try中,变量在外部声明。我不想把变量的声明和更新放在for
循环中,从而混淆OP。你说的代码已经在问题中了。我只是想表达OP应该更新变量。