我正在尝试为对象方法指定选项,其中一个选项是回调函数。我使用jQuery extend
方法将我的默认值应用于options参数,但我不确定应该为回调参数设置什么值。
这就是我现在所拥有的:
var options = $.extend({
wrapper: '#wrapper', // Define the default wrapper to prepend to
fade: true, // Fade the overlay by default
callback: function(){} // Define the callback function
},options);
以上是为回调分配默认值的最佳方法吗?或者将它设置为假更好?我想如果你试图调用options.callback()
并将回调设置为false,那么你会收到错误吗?
答案 0 :(得分:3)
具有非函数默认值需要在调用之前进行显式检查。
拥有一个空函数需要调用它的开销(尽管是最小的)。
没有正确的方法。这完全取决于你。如果您使用空函数,则可以使用$.noop
重用现有函数。
var options = $.extend({
wrapper: '#wrapper', // Define the default wrapper to prepend to
fade: true, // Fade the overlay by default
callback: $.noop // Define the callback function
},options);
答案 1 :(得分:1)
jQuery有一个内置函数,不会执行任何名为$.noop的内容。