Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 理解`if(document.createEvent){..}`函数调用(不带括号)?_Javascript - Fatal编程技术网

Javascript 理解`if(document.createEvent){..}`函数调用(不带括号)?

Javascript 理解`if(document.createEvent){..}`函数调用(不带括号)?,javascript,Javascript,我有以下脚本来自: 现在我不明白if document.createEvent的用法: 我读了问题的答案,还读了一些其他问题 在大多数示例中,是某种引用,如window.onload=initAll;或var ret=乘法;但这里显然不是这样。我最感兴趣的例子是: function Multiply(operator, operand) { return operator * operand; } var operator = 3; var operand = 4; var ret =

我有以下脚本来自:

现在我不明白if document.createEvent的用法:

我读了问题的答案,还读了一些其他问题

在大多数示例中,是某种引用,如window.onload=initAll;或var ret=乘法;但这里显然不是这样。我最感兴趣的例子是:

function Multiply(operator, operand) {
    return operator * operand;
}
var operator = 3;
var operand = 4;
var ret = Multiply;
在这里,根据作者的说法,Multiply不会被执行,并重新引用Multiply函数

还指出,调用不带括号的函数是一种引用

但这让我更加困惑,因为对我来说,引用document.createEvent(创建事件的函数)毫无意义

关于函数document.createEvent like的文档没有指出没有参数的用法

所以,请给我的大脑带来一些光明。 我感谢你的帮助

简短问题:

document.createEvent是函数调用还是引用? document.createEvent返回什么? document.createEvent是函数调用还是引用

它是一个表示文档对象属性的表达式。人们期望它的值是对将创建事件的函数对象的引用,但它也可能是未定义的

document.createEvent返回什么

作为表达式,其计算结果为所述属性的当前值

document.createEvent是函数调用还是引用

它是一个表示文档对象属性的表达式。人们期望它的值是对将创建事件的函数对象的引用,但它也可能是未定义的

document.createEvent返回什么

作为表达式,其计算结果为所述属性的当前值

document.createEvent是函数调用还是引用

尝试访问文档对象上的属性

该财产可能存在。它可能有价值。该值可能是对函数的引用

如果所有这些都是真的,那么它将是一个真值,If块将运行。如果它不存在,它将是一个假值,并且else块将运行

这是一个测试,以查看浏览器是否支持该功能

document.createEvent返回什么

财产的价值。如果浏览器支持createEvent,则它将作为函数计算,这是一个真值

document.createEvent是函数调用还是引用

尝试访问文档对象上的属性

该财产可能存在。它可能有价值。该值可能是对函数的引用

如果所有这些都是真的,那么它将是一个真值,If块将运行。如果它不存在,它将是一个假值,并且else块将运行

这是一个测试,以查看浏览器是否支持该功能

document.createEvent返回什么

财产的价值。如果浏览器支持createEvent,那么它将作为函数计算,这是一个真值。

1-JavaScript有truthy和falsy值。诸如0、undefined、null等值是虚假值,而1、-1或文本(例如对象的现有属性)是真实值。如果他们的价值观不是虚假的! 2-由于createEvent是document对象的一个属性,因此代码段基本上测试该函数的存在性,这意味着它的存在性是真实的。我假设此检查与浏览器兼容性和方法弃用有关。 您可以从

1中读取详细信息-JavaScript具有truthy和falsy值。诸如0、undefined、null等值是虚假值,而1、-1或文本(例如对象的现有属性)是真实值。如果他们的价值观不是虚假的! 2-由于createEvent是document对象的一个属性,因此代码段基本上测试该函数的存在性,这意味着它的存在性是真实的。我假设此检查与浏览器兼容性和方法弃用有关。
您可以从检查document.createEvent函数是否存在中读取详细信息。它一点也不叫它。在Javascript中,函数是一级对象,可以这样处理。它检查浏览器是否支持document.createEvent,如果支持,则使用它,否则使用另一种方法。可能重复 — 这是完全相同的技术。它检查document.createEvent函数是否存在。它一点也不叫它。在Javascript中,函数是一级对象,可以这样处理。它检查浏览器是否支持document.createEvent,如果支持,则使用它,否则使用另一种方法。可能重复 — 我认为这个答案是最好的,因为它涉及到什么样的返回值
允许让if语句计算为true。但我对其他答案投了更高的票,因为它们都是好的。谢谢。我认为这个答案是最好的,因为它引用了什么样的返回值可以接受,让if语句计算为true。但我对其他答案投了更高的票,因为它们都是好的。谢谢
function Multiply(operator, operand) {
    return operator * operand;
}
var operator = 3;
var operand = 4;
var ret = Multiply;