JavaScript 函数中的字符串或 Null 检查
String or Null check in JavaScript function
单击按钮后,应验证 id 值,如果该值不是 NA 或 null,则应加载页面,否则应抛出警报。
<a href="#" id="check" class="button" onclick="id_check()">View ID</a><br><br>
function id_check() {
if (id != "NA" || (id != null)) {
// load diff page
} else {
alert("Something Wrong");
}
}
但是 or ( || ) 的 if 条件没有按预期工作。当我比较 id != "NA" 时它工作正常。我在这里错过了什么?
您的条件应该是 id != "NA" && id != null
,因为您希望 id 与 NA
和 也与 null
不同。
这里要理解的重要一点是 ||
运算符短路结果。这意味着,如果第一个表达式的计算结果为真,那么该值将立即被 returned。根本不会计算第二个表达式。
在您的情况下,id != "NA" || id != null
,如果数据是 null
,则 id != "NA"
检查将 return true
。所以,第二部分根本没有检查。
因为你希望输入数据不是NA
和null
,你可以在这里使用&&
运算符,像这样id != "NA" && id != null
注意:if != null
会returnfalse
,如果id
是undefined
,因为!=
将强制表达式。因此,最好使用严格的相等比较运算符。因此,条件将变为 if id !== "NA" && id !== null
如果 id 不为空,请使用以下代码显示 'successfully' 文本作为消息。
<a href="#" id="check" class="button" onclick="id_check(this.id)">View ID</a>
<script>
function id_check (id)
{
//if block will execute if element id value isn't empty or Null
if ( id )
{
alert("Id isn't empty");
}else
{
alert ("Id is empty");
}
}
</script>
我们需要将控件的id传给function.After传id我们可以根据自己的需求来验证
this.id - 它将 return 元素的 ID 作为 'id_check' 函数的参数。
参考以下 link 来验证答案 -
http://jsfiddle.net/pdhsob8s/4/
单击按钮后,应验证 id 值,如果该值不是 NA 或 null,则应加载页面,否则应抛出警报。
<a href="#" id="check" class="button" onclick="id_check()">View ID</a><br><br>
function id_check() {
if (id != "NA" || (id != null)) {
// load diff page
} else {
alert("Something Wrong");
}
}
但是 or ( || ) 的 if 条件没有按预期工作。当我比较 id != "NA" 时它工作正常。我在这里错过了什么?
您的条件应该是 id != "NA" && id != null
,因为您希望 id 与 NA
和 也与 null
不同。
这里要理解的重要一点是 ||
运算符短路结果。这意味着,如果第一个表达式的计算结果为真,那么该值将立即被 returned。根本不会计算第二个表达式。
在您的情况下,id != "NA" || id != null
,如果数据是 null
,则 id != "NA"
检查将 return true
。所以,第二部分根本没有检查。
因为你希望输入数据不是NA
和null
,你可以在这里使用&&
运算符,像这样id != "NA" && id != null
注意:if != null
会returnfalse
,如果id
是undefined
,因为!=
将强制表达式。因此,最好使用严格的相等比较运算符。因此,条件将变为 if id !== "NA" && id !== null
如果 id 不为空,请使用以下代码显示 'successfully' 文本作为消息。
<a href="#" id="check" class="button" onclick="id_check(this.id)">View ID</a>
<script>
function id_check (id)
{
//if block will execute if element id value isn't empty or Null
if ( id )
{
alert("Id isn't empty");
}else
{
alert ("Id is empty");
}
}
</script>
我们需要将控件的id传给function.After传id我们可以根据自己的需求来验证
this.id - 它将 return 元素的 ID 作为 'id_check' 函数的参数。
参考以下 link 来验证答案 - http://jsfiddle.net/pdhsob8s/4/