函数(){}在javascript中的含义是什么?

函数(){}在javascript中的含义是什么?,javascript,Javascript,最近我遇到了一段代码,它是这样的: var noop = function(){}; options.ondragover = options.ondragover || noop; options.ondragleave = options.ondragleave || noop; options.ondrop = options.ondrop || noop; options.onfilesdone = options.onfilesdone || noop;

最近我遇到了一段代码,它是这样的:

var noop = function(){};
    options.ondragover = options.ondragover || noop;
    options.ondragleave = options.ondragleave || noop;
    options.ondrop = options.ondrop || noop;
    options.onfilesdone = options.onfilesdone || noop;

它只是一个自执行函数,在这个函数中,无论您声明什么,都可以执行相同的函数

它限制作用域,使其私有,并对全局对象隐藏变量

// Somewhere it is defined as global..
var x = 7;  
// Your piece of code
var x = "roman" // Here, you override the value of x defined earlier.
alert(x); // "roman"    
But when you use a closure which you have mentioned:    
var x = 7;   
// it doesn't affect/change the value of global x   
(function (){ var x = "roman";})();
alert(x); // 7

这是一个无操作功能

在下面的链接中详细讨论


您发布的代码声明了一个名为noop(无操作)的空函数,作为在某些条件适用时执行的替代方法。 例如,代码:

options.ondragover=options.ondragover | | noop


检查
选项。ondragover
是否存在,如果不存在,则将空函数分配给变量。

如果任何
选项不存在,则它只是一个占位符函数。*
函数。noop表示“无操作”。这是一个空函数在这种情况下,如果没有任何其他in选项,只需设置默认函数与问题中描述的不同!我已经解释了我们可以使用它的方式以及区别。我上面描述的答案中有什么错误吗?我不认为你的答案中有任何事实上的错误。只是这不是这个问题的答案。上面的共享链接很有帮助。谢谢分享。