¿Por qué pasar un objeto vacío al método extendido de jQuery?
jQuery tiene una muy buenaextend
método, que combina 2 objetos en uno.
Sobre eljQuery Plugins página de autor muestran un ejemplo de la siguiente manera:
var settings = $.extend({
'location' : 'top',
'background-color' : 'blue'
}, options);
Sin embargo, he visto muchos complementos pasar un objeto vacío como primer parámetro, así:
var settings = $.extend({}, {
'location' : 'top',
'background-color' : 'blue'
}, options);
Por lo que puedo decir, estos dos hacen exactamente lo mismo. La única diferencia sería si ladefaults
se habría almacenado en su propia variable:
var defaults = {
'location' : 'top',
'background-color' : 'blue'
},
settings = $.extend({}, defaults, options);
e esta manera, siempre puede acceder a sus valores predeterminados sin que sean anulados por laoptions
.
Aquí está la pregunta: ¿Por qué tantos autores de complementos optan por pasar un objeto vacío aextend
, incluso cuando no almacenan los valores predeterminados en una variable?
¿Me estoy perdiendo de algo