如何在JavaScript中应用条件返回语句
How to apply conditional return statement in JavaScript
我有这个html输入:
Rows: <input type="text" class="rows" onkeypress="return isNumber(event)"><br>
这个javascript函数只验证数字
function isNumber(evt) {
evt = (evt) ? evt : window.event;
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
return false;
}
return true;
}
但我想用微分支来做这样的事情:
function isNumber(evt){
evt = evt || window.event;
var charCode = evt.which || evt.keyCode;
(charCode > 31 && (charCode < 48 || charCode > 57)) && return false;
return true;
}
问题是最后两行没用。
return
是一个语句而不是表达式,因此不能用作逻辑运算符的参数。
然而,在您的情况下,通过将条件反转为if
子句,可以将最后两行重写为单个return
语句:
return !(charCode > 31 && (charCode < 48 || charCode > 57));
或者,正如zerkms所指出的,您可以通过翻转运算符(&&
<=>||
和<
<=>>=
)来丢失!
,在我看来,这会增加可读性:
return charCode <= 31 || (charCode >= 48 && charCode <= 57);
根据您的描述,看起来您正在寻找条件检查和返回:
function isNumber(evt){
evt = evt || window.event;
var charCode = evt.which || evt.keyCode;
return !(charCode > 31 && (charCode < 48 || charCode > 57));
}
相关文章:
- 为什么typeof的数组的数组的未定义值返回为“0”;未定义的“;我的条件不认为是真的
- 返回三元条件下的新promise Q
- Check IF条件返回false,但IF中的语句仍然可以在JavaScript中工作
- 在HTML中搜索字符串并返回True的Javascript条件
- 带Promises的条件返回:抛出vs返回null
- 有条件地在返回语句中包含 json 字段
- Javascript 条件返回语句(Shorthand if-else 语句)
- 聚合物 如何使用条件根据函数返回的布尔值显示不同的元素
- 车把,如何为帮助程序返回的值设置条件
- 节点猫鼬填充条件不返回预期结果
- jquery:如果第一个选择器返回为空,有没有一种简明的方法可以有条件地使用第二个选择器
- 条件返回或单变量返回
- 为什么这个表达式在条件中返回实际的字符串文字
- 如何重写函数以避免jslint返回条件而不是赋值警告
- Javascript条件返回false.为什么?
- 是否可以使函数在满足条件之前不返回
- 如何获得从匹配条件返回的jQuery元素的数量
- 从Map方法中有条件返回对象
- JS中常见的条件返回false函数
- 如何在JavaScript中应用条件返回语句