Javascript 有人能解释一下下面的说法吗
我的疑问是: var k=事件?event.which:window.event.keyCode 我对上述说法感到困惑。有一件事是可以肯定的,上面的声明只用于事件验证..我没有得到解释..有人能帮我找出上面的声明的实际作用吗??是否仅在JAVASCRIPT中寻求简短的解释k=event?event.which:window.event.keyCode 表示您是否将事件变量传递给函数并使用它;Else-使用全局事件 它是三元运算符,可以扩展为Javascript 有人能解释一下下面的说法吗,javascript,Javascript,我的疑问是: var k=事件?event.which:window.event.keyCode 我对上述说法感到困惑。有一件事是可以肯定的,上面的声明只用于事件验证..我没有得到解释..有人能帮我找出上面的声明的实际作用吗??是否仅在JAVASCRIPT中寻求简短的解释k=event?event.which:window.event.keyCode 表示您是否将事件变量传递给函数并使用它;Else-使用全局事件 它是三元运算符,可以扩展为 <script> function
<script>
function AvoidSpace(event) {
var k = event ? event.which : window.event.keyCode;
if (k >= 42 && k <= 57 || k == 32 || k == 61 || k == 13) return false;
}
function ExceptNumber(event) {
var k = event ? event.which : window.event.keyCode;
if (k >= 0 && k <= 47 || k >= 58 && k <= 122) return false;
}
function NumChar(event) {
var k = event ? event.which : window.event.keyCode;
if (k >= 0 && k <= 31 || k >= 33 && k <= 64 || k >= 91 && k <= 96) return false;
}
function clearFunction() {
document.getElementById('register').reset();
}
</script>
它将返回被按下的键的整数值;键代码k=事件?event.which:window.event.keyCode
表示您是否将事件变量传递给函数并使用它;Else-使用全局事件
它是三元运算符,可以扩展为
<script>
function AvoidSpace(event) {
var k = event ? event.which : window.event.keyCode;
if (k >= 42 && k <= 57 || k == 32 || k == 61 || k == 13) return false;
}
function ExceptNumber(event) {
var k = event ? event.which : window.event.keyCode;
if (k >= 0 && k <= 47 || k >= 58 && k <= 122) return false;
}
function NumChar(event) {
var k = event ? event.which : window.event.keyCode;
if (k >= 0 && k <= 31 || k >= 33 && k <= 64 || k >= 91 && k <= 96) return false;
}
function clearFunction() {
document.getElementById('register').reset();
}
</script>
它将返回被按下的键的整数值;键代码此语法:
if (event == true) {
k = event.which;
} else {
k = window.event.keyCode;
}
被称为三元运算符。如果表达式为true,则返回值1,否则返回值2。在这种情况下,对象事件用作表达式,因此它将计算它是否不存在null。此语法:
if (event == true) {
k = event.which;
} else {
k = window.event.keyCode;
}
expression ? value1 : value2;
被称为三元运算符。如果表达式为true,则返回值1,否则返回值2。在这种情况下,对象事件被用作表达式,因此它将计算它是否不存在null
expression ? value1 : value2;
这是一个三元运算符。如果问号前的事物为true或truthy,则返回冒号前的表达式;如果为false或false,则返回后面的表达式
如果定义了事件,即,它被传递到函数中,它将是truthy,这意味着如果作为布尔值进行计算,则它是true,即使它不是布尔类型
这样做的目的是检查事件是否传递到函数中,并将k设置为event.which,如果传递到函数中,则设置为导致事件的键代码,否则设置为全局窗口事件中的键代码作为回退
这是一个三元运算符。如果问号前的事物为true或truthy,则返回冒号前的表达式;如果为false或false,则返回后面的表达式
如果定义了事件,即,它被传递到函数中,它将是truthy,这意味着如果作为布尔值进行计算,则它是true,即使它不是布尔类型
这样做的目的是检查事件是否传递到函数中,并将k设置为event.which,如果传递到函数中,则设置为导致事件的键代码,否则设置为全局窗口事件中的键代码作为回退 一些浏览器使用keyCode,其他浏览器使用which。
该指令仅用于跨浏览器问题,并用于在按键和按键事件期间检索按键代码一些浏览器使用按键代码,其他浏览器使用按键代码。
该指令仅用于跨浏览器问题,用于在按键和按键事件期间检索按键代码,还有,先生,还有一个小问题..我可以知道event.which在这里做什么吗?event.which返回按下的按键代码,如图所示@ManojKarthikif event==true{不正确。应该是if event{.Yours将始终为false。@斜视原因?它不是==,只是==所以事件将被转换为布尔值。或者我遗漏了什么?@Justinas:The==不会转换为布尔值。它遵循一种类型强制的有点复杂的递归算法,通常将两个操作数都转换为数字。您可以用一个简单的test console.log验证这一点{foo:bar}==true;//falseSir,还有一个小问题..我可以知道event.which在这里做什么吗?event.which返回按下的键码,如这里所示@ManojKarthikif event==true{不正确。应该是if event{.Yours将始终为false。@斜视原因?它不是==,只是==所以事件将被转换为布尔值。或者我遗漏了什么?@Justinas:The==不会转换为布尔值。它遵循一种类型强制的有点复杂的递归算法,通常将两个操作数都转换为数字。您可以用一个简单的test console.log验证这一点{foo:bar}==true;//false