无参数调用javascript函数

无参数调用javascript函数,javascript,Javascript,是否可以调用javascript函数而无需编写脚本?(). 在下面的代码中,来自一本书,有一行 http.onreadystatechange = useHttpResponse; 如果函数定义中没有参数,我们可以不带参数调用吗 function getServerText() { var myurl = 'ajax.php'; myRand = parseInt(Math.random() * 999999999999999); var mo

是否可以调用javascript函数而无需编写脚本?(). 在下面的代码中,来自一本书,有一行

http.onreadystatechange = useHttpResponse;
如果函数定义中没有参数,我们可以不带参数调用吗

function getServerText() {
        var myurl = 'ajax.php';
        myRand = parseInt(Math.random() * 999999999999999);
        var modurl = myurl + "?rand=" + myRand;
        http.open("GET", modurl, true);
        http.onreadystatechange = useHttpResponse;
        http.send(null);
        }


        function useHttpResponse() {
        if (http.readyState == 4) {
        if(http.status == 200) {
        var mytext = http.responseText;
        document.getElementById('myPageElement')
        .innerHTML = mytext;
        }
        } else {
        document. getElementById('myPageElement')
        .innerHTML = "";
        }
        }

分配事件处理程序时,您不想调用该函数,而是给它一个函数的引用,稍后将调用该函数


所以。。。否。
()
用于表示“调用此函数”,在本例中没有参数。

在分配事件处理程序时,您不想调用该函数,而是给它一个对函数的引用,稍后将调用该函数


所以。。。否。
()
用于表示“调用此函数”,在本例中没有参数。

在分配事件处理程序时,您不想调用该函数,而是给它一个对函数的引用,稍后将调用该函数


所以。。。否。
()
用于表示“调用此函数”,在本例中没有参数。

在分配事件处理程序时,您不想调用该函数,而是给它一个对函数的引用,稍后将调用该函数


所以。。。否。
()
用于表示“调用此函数”,在本例中不带任何参数。

唯一可以省略括号的情况是在使用
new
关键字时。或者您使用了类似于
setTimeout(func,0)
的黑客软件,但这在我看来并不合理。edit:正如Niet所说,在这种情况下,您没有调用函数,也不想调用它。您正在将一个函数指定为回调函数,以便其他代码稍后可以调用该函数。此处的
http.onreadystatechange=useHttpResponse
是对
useHttpResponse
函数的引用。部分原因是函数是JavaScript中的第一类对象。您可以将函数分配给变量:
var square=function(x){return x*x;}
。您甚至可以有一个函数数组:
var fs=[square,function(x){return x*x*x;}]
您可能会发现有趣的是,您可以使用如下语法调用函数:
square.apply(null,[5])
。注意我是如何在
square
函数上调用
apply
函数的。唯一可以省略括号的情况是在使用
new
关键字时。或者您使用了类似于
setTimeout(func,0)
的黑客软件,但这在我看来并不合理。edit:正如Niet所说,在这种情况下,您没有调用函数,也不想调用它。您正在将一个函数指定为回调函数,以便其他代码稍后可以调用该函数。此处的
http.onreadystatechange=useHttpResponse
是对
useHttpResponse
函数的引用。部分原因是函数是JavaScript中的第一类对象。您可以将函数分配给变量:
var square=function(x){return x*x;}
。您甚至可以有一个函数数组:
var fs=[square,function(x){return x*x*x;}]
您可能会发现有趣的是,您可以使用如下语法调用函数:
square.apply(null,[5])
。注意我是如何在
square
函数上调用
apply
函数的。唯一可以省略括号的情况是在使用
new
关键字时。或者您使用了类似于
setTimeout(func,0)
的黑客软件,但这在我看来并不合理。edit:正如Niet所说,在这种情况下,您没有调用函数,也不想调用它。您正在将一个函数指定为回调函数,以便其他代码稍后可以调用该函数。此处的
http.onreadystatechange=useHttpResponse
是对
useHttpResponse
函数的引用。部分原因是函数是JavaScript中的第一类对象。您可以将函数分配给变量:
var square=function(x){return x*x;}
。您甚至可以有一个函数数组:
var fs=[square,function(x){return x*x*x;}]
您可能会发现有趣的是,您可以使用如下语法调用函数:
square.apply(null,[5])
。注意我是如何在
square
函数上调用
apply
函数的。唯一可以省略括号的情况是在使用
new
关键字时。或者您使用了类似于
setTimeout(func,0)
的黑客软件,但这在我看来并不合理。edit:正如Niet所说,在这种情况下,您没有调用函数,也不想调用它。您正在将一个函数指定为回调函数,以便其他代码稍后可以调用该函数。此处的
http.onreadystatechange=useHttpResponse
是对
useHttpResponse
函数的引用。部分原因是函数是JavaScript中的第一类对象。您可以将函数分配给变量:
var square=function(x){return x*x;}
。您甚至可以有一个函数数组:
var fs=[square,function(x){return x*x*x;}]
您可能会发现有趣的是,您可以使用如下语法调用函数:
square.apply(null,[5])
。注意我是如何在
square
函数上调用
apply
函数的。