可能重复:
jQuery 如何表现得像一个对象和一个函数?
在 jquery 中,我们可以使用 $ 作为函数以及命名空间。例如,这两个用例都是有效的。
$("div").html("<b>Wow!</b> Such excitement...");
var trimmed = $.trim(someString);
一个标识符 $ 如何同时充当对象和函数?
可能重复:
jQuery 如何表现得像一个对象和一个函数?
在 jquery 中,我们可以使用 $ 作为函数以及命名空间。例如,这两个用例都是有效的。
$("div").html("<b>Wow!</b> Such excitement...");
var trimmed = $.trim(someString);
一个标识符 $ 如何同时充当对象和函数?
首先要做的事情:(jQuery
或其别名$
)是一个函数。这非常重要,因为函数是 JavaScript 中的“一等”对象。而且由于它们本身就是对象,因此它们能够像任何其他对象一样被赋予属性和方法。例如:
var f = function() {};
f.h = function(x) {
console.log(x);
};
这就是让 jQuery 发挥其魔力的原因。此外,通过使用继承,我们有可能像您在第一个示例中展示的那样链接方法。根据 which 的值$(selector)
返回一个 jQuery“接口”(技术上) ,从中我们可以运行诸如、和等等之类的方法。[object Object]
selector
.html
.css
.toggle
它不是。
$
只是一个功能。
它也有可以使用的原型函数,因为一个函数可以有其他函数作为它的一部分(因为一个函数本身就是一个对象)。
你可以做:
console.log( Object.getOwnPropertyNames($) );
查看所有附加的功能(和属性)。