我的问题
我一直在从两个不同的互联网来源学习AJAX的基础知识。在发送异步HTTP请求的多步骤过程中,在XHR请求对象上调用 .onload
属性并将其设置为的方式存在一个小小的不一致1)匿名函数或2)回调(?我想这就是MDN所说的)。
第一种方法
在ourRequest
对象上调用.onload
属性,这是设置为匿名函数的
ourRequest.onload = function() {
// the code goes here
}
第二种方法
在asyncRequestObject
对象上调用.onload
属性,这是设置为函数名称的(回调??):
function handleSuccess () {
// the code goes here
}
asyncRequestObject.onload = handleSuccess;
我的问题(S)
第一种方法和第二种方法的工作方式有什么区别?
那么,有没有理由使用第一种方法而不是第二种方法呢?
发布于 2018-08-13 03:57:34
函数声明在当前作用域中创建一个(已提升的)变量,该变量与函数同名,其值是对该函数的引用。
函数表达式只是作为对该函数的引用进行计算。
因此,主要区别在于,在使用handleSuccess
的情况下,您可以在其他地方继续引用该函数以用于其他目的。
https://stackoverflow.com/questions/51812324
复制相似问题