我一直好奇jQuery如何既可以是一个函数又可以是一个对象属性。
你可以像使用函数一样使用它,比如 jQuery(...),也可以像使用属性一样使用它,比如 jQuery.ajax(...)。
在JavaScript中,怎样实现这样的功能呢?
我一直好奇jQuery如何既可以是一个函数又可以是一个对象属性。
你可以像使用函数一样使用它,比如 jQuery(...),也可以像使用属性一样使用它,比如 jQuery.ajax(...)。
在JavaScript中,怎样实现这样的功能呢?
在 JavaScript 中,函数是对象。因此,您可以拥有自己的主函数。
var $ = function() { alert('wat'); }
然后扩展它
$.fadeTo = function() { alert('fadeto'); }
function test() { ... }
test.a = function () { ... };
test.a(); // totally valid
test.a
是否可以在初始的 function test() {...}
声明内定义,或者必须单独声明 test.a
才能在 test()
之外访问?换句话说,是否可能从 test(){...}
声明内定义 a
属性,以便仍然可以从 test()
外部访问它?我似乎找不到其他地方的答案。 - Brandon