Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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 使用命名函数作为jquery ajax成功回调时是否需要括号_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 使用命名函数作为jquery ajax成功回调时是否需要括号

Javascript 使用命名函数作为jquery ajax成功回调时是否需要括号,javascript,jquery,ajax,Javascript,Jquery,Ajax,如果前面定义了一个函数,那么在指定成功回调时是否需要包含括号 如果我这样做,会有什么不同 如 或 你想要的是无帕伦斯版本。原因是括号告诉JavaScript立即执行函数,而不仅仅是按名称引用它,因此成功回调实际上是在执行AJAX调用时调用fish_food()的结果(这可能是一个涉及未定义的错误).您想要无帕伦斯版本。原因是括号告诉JavaScript立即执行函数,而不仅仅是按名称引用它,因此成功回调实际上是在执行AJAX调用时调用fish_food()的结果(这可能是一个涉及未定义的错误).否

如果前面定义了一个函数,那么在指定成功回调时是否需要包含括号

如果我这样做,会有什么不同


你想要的是无帕伦斯版本。原因是括号告诉JavaScript立即执行函数,而不仅仅是按名称引用它,因此
成功
回调实际上是在执行AJAX调用时调用
fish_food()
的结果(这可能是一个涉及
未定义
的错误).

您想要无帕伦斯版本。原因是括号告诉JavaScript立即执行函数,而不仅仅是按名称引用它,因此
成功
回调实际上是在执行AJAX调用时调用
fish_food()
的结果(这可能是一个涉及
未定义
的错误).

括号将告诉浏览器需要立即执行函数
fish\u food
,并且必须将值返回到
success
属性。

括号将告诉浏览器需要立即执行函数
fish\u food
,并且必须将值返回到
success
属性。

这将起作用

$.ajax({
    url: '/',
    success: fish_food
});
这会奏效的

$.ajax({
    url: '/',
    success: fish_food
});

你不需要括号。使用parens将调用函数,它需要的只是一个与C/C++中的函数指针等效的名称。

不需要括号。使用parens将调用函数,它需要的只是一个与C/C++中的函数指针等效的名称。

有括号会导致函数在此时此地执行,这就是为什么需要第一个版本的else success存储函数的返回值。

使用括号会导致函数在此时执行,这就是为什么需要第一个版本的else success存储函数的返回值

$.ajax({
    url: '/',
    success: fish_food
});
这是正确的

当您使用
success:fish_food()
时,它将立即执行,并且返回设置为success

这是正确的


当您使用
success:fish_food()
时,它将立即执行,并将返回设置为success。

fish_food
本身(不带参数)充当对函数对象的引用。它允许您传递对函数的引用,以便稍后调用

fish\u food()
(带parens)是一个函数调用表达式,用于执行函数。对函数代码进行求值并使用可选返回的值运行


使用您提供的AJAX代码(以及所有涉及回调的异步JavaScript),您希望使用
fish\u food
版本(无parens)。这会将对成功函数的引用传递给AJAX代码,一旦AJAX代码完成了往返服务器的往返过程,就会异步执行该函数。

fish_food
自身(无参数)充当对函数对象的引用。它允许您传递对函数的引用,以便稍后调用

fish\u food()
(带parens)是一个函数调用表达式,用于执行函数。对函数代码进行求值并使用可选返回的值运行


使用您提供的AJAX代码(以及所有涉及回调的异步JavaScript),您希望使用
fish\u food
版本(无parens)。这会将对成功函数的引用传递给AJAX代码,一旦AJAX代码完成往返服务器的循环,就会异步执行该函数。

基本上不会。为什么不试试并告诉我们:DRelated:Haha!4分钟内回答6个问题!为了这个!基本上没有。你为什么不试试并告诉我们:哈哈!4分钟内回答6个问题!为了这个!
$.ajax({
    url: '/',
    success: fish_food
});