Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我知道这个代码不起作用,为什么我找到的代码起作用?是什么使错误的代码,错误的?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 我知道这个代码不起作用,为什么我找到的代码起作用?是什么使错误的代码,错误的?

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

这是一些编码书中的一些练习。目标是使用for循环和jQuery在不同的行上打印朋友的名字;但每次我打开它,页面就会变得没有响应。我想知道详细的原因

这是不起作用的代码:

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应该更新变量。