Javascript 如何检查3个变量是否都是空字符串?
我有3个文本输入字段。我想使用带有逻辑运算符的if语句来检查输入字段是否为空,但我不能对3个变量使用or(| |) 使用逻辑运算符的正确方法是什么Javascript 如何检查3个变量是否都是空字符串?,javascript,if-statement,logical-operators,Javascript,If Statement,Logical Operators,我有3个文本输入字段。我想使用带有逻辑运算符的if语句来检查输入字段是否为空,但我不能对3个变量使用or(| |) 使用逻辑运算符的正确方法是什么 let name = $("#name").val(); let email = $("#email).val(); let color = $("#color).val(); if(name == '' && ( email == '' || color == '') { console.log("please complet
let name = $("#name").val();
let email = $("#email).val();
let color = $("#color).val();
if(name == '' && ( email == '' || color == '') {
console.log("please complete form");
}
else {
//submit data
}
如果我将name字段留空,代码将按预期工作,但由于name为true,if语句接受它。如何使if语句检查任何输入字段是否为空?对每个字段使用
|
:
if(name === '' || email === '' || color === '') {
您不需要()
分组,因为操作顺序并不重要-您只想看看是否有任何测试成功
请注意,严格相等比较(==
)通常比抽象相等比较(=
)更可取
由于.val()
总是返回一个字符串,并且您希望对照空字符串进行检查,因此只要检查该值是否真实即可,如果需要:
if(!name || !email || !color) {
对以下各项使用
|
:
if(name === '' || email === '' || color === '') {
您不需要()
分组,因为操作顺序并不重要-您只想看看是否有任何测试成功
请注意,严格相等比较(==
)通常比抽象相等比较(=
)更可取
由于.val()
总是返回一个字符串,并且您希望对照空字符串进行检查,因此只要检查该值是否真实即可,如果需要:
if(!name || !email || !color) {
空字符串被视为“falsy”,这意味着在使用逻辑运算符时,它被解释为
false
。将这些知识与结合使用代码>(非)运算符,我们可以执行以下操作:
if(!name || !email || !color) {
console.log("please complete form");
}
该条件在简单的英语中表示“如果没有名字或没有电子邮件或没有颜色”空字符串被视为“falsy”,这意味着在使用逻辑运算符时它被解释为false
。将这些知识与结合使用代码>(非)运算符,我们可以执行以下操作:
if(!name || !email || !color) {
console.log("please complete form");
}
用简单的英语来说,这个条件的意思是“如果没有名字或没有电子邮件或没有颜色”您有一个语法错误(在if
语句中忘记了一个括号)
出现语法错误(在if
语句中忘记了括号)
您可能不需要JS。只需将这些字段设置为必需的
,这样就可以了。您是否也尝试过:如果(名称=“”| |电子邮件=“”| |颜色=“”)
您的代码是“如果名称为空,电子邮件或颜色为空”。它们中的任何一个都不是空的。为什么你说不能对这三个变量使用OR运算符呢?你可能不需要JS。只需将这些字段设置为必需的
,这样就可以了。您是否也尝试过:如果(名称=“”| |电子邮件=“”| |颜色=“”)
您的代码是“如果名称为空,电子邮件或颜色为空”。它们中的任何一个都不是空的。为什么你说不能对这三个变量使用OR运算符呢?这真的很有帮助!谢谢。那真的很有帮助!非常感谢。