Javascript if语句语法澄清
代码停止工作。原因是什么?因为语法不正确Javascript if语句语法澄清,javascript,html,Javascript,Html,代码停止工作。原因是什么?因为语法不正确 if ((name == null || name == "") name = " visitor ") 如果未正确关闭 应该是这样的 if ((name == null || name == "") name = " visitor ")" 希望这有帮助我有三点建议 正确的代码应该是 var name=prompt(“请输入您的姓名:”); 如果(名称==null | |名称==“”) { 姓名=‘访客’; } 编写(“Hi”+name+“欢迎
if ((name == null || name == "") name = " visitor ")
如果未正确关闭
应该是这样的
if ((name == null || name == "") name = " visitor ")"
希望这有帮助我有三点建议
var name=prompt(“请输入您的姓名:”);
如果(名称==null | |名称==“”)
{
姓名=‘访客’;
}
编写(“Hi”+name+“欢迎使用javascript”);
if(u.isString(name))
document.write…
周围的大括号是无用的,对if语句没有任何作用
您不必在单行if语句周围使用大括号,但正确的编写方法是:
if (name == null || name == "") {
name = "visitor";
}
document.write("Hi " + name + " welcome to javascript.");
只有在条件之后执行的代码只有一行时,上述操作才会起作用。任何其他代码都在if之外执行。if的一般结构是:
if (name == null || name == "")
name = "visitor";
document.write("Hi " + name + " welcome to javascript.");
当条件
表达式为true时,它将执行thingToDo
中的代码。(我故意省略了可选的else
子句,因为它与这个问题无关。)
因此,在您的第一个代码块中,条件是name==null | | name==”
,thingToDo
是name=“visitor”
。因此,如果用户输入一个空名称作为对提示的响应,它会在其位置将名称设置为“visitor”
如果thingToDo
包含多个语句,则必须将它们用大括号括起来,使其成为一个代码块。但是如果只是一条语句,大括号是可选的(尽管我建议使用大括号,请参见)。document.write()
调用周围的大括号是不相关的,因为它在if
语句之外
您的第二次尝试是错误的,因为您已将条件更改为:
if (condition) thingToDo
这不是一个有效的表达式--您已将赋值移动到条件中,但没有运算符将其与比较连接起来。大括号中的代码如果((name==null | name==“”)name=“visitor”)
应该怎么办?基本上,这就像编写if((true)name=“visitor”)
。它在语法上是无效的,不表示块,并且暗示您可以执行类似于(true)name
的操作并期望得到结果。为什么使用单引号而不是双引号?这只是个人风格,没有理由喜欢。不过你已经破坏了功能。if
的想法是,当用户没有输入任何内容时,查看他们是否应该将名称
更改为“访问者”
。无论他们是否输入了任何内容,都应该将信息写出来。谢谢。。。我知道了。但我的好奇心是关于访客的部分。。括号外的条件是如何产生的?如果你打算混合使用javascript和html,使用不同的引号会更容易。我完全不同意这种说法,我在这个行业工作了多年。你在哪里看到“”
在他的代码中?@Barmar这只是一个打字错误。@Barmar只要忘记最后一个双引号,它就会有意义。@AmericanPatriot,但也没有最后一个)
。问题只是说name=“visitor”
,这不是语法错误。哦,现在我明白了。他的问题不是关于代码块中的代码,而是关于文本中的不同代码,没有突出显示以便我可以看到。
if (name == null || name == "") name = " visitor "
{document.write("Hi " + name + " welcome to javascript.");}
if (name == null || name == "") {
name = "visitor";
}
document.write("Hi " + name + " welcome to javascript.");
if (name == null || name == "")
name = "visitor";
document.write("Hi " + name + " welcome to javascript.");
if (condition) thingToDo
(name == null || name == "") name = " visitor "