我是JavaScript的新手,我想了解一些东西,例如在jQuery中我们有jQuery对象(通常称为$),但我在这里很困惑:
在jQuery中,当我们想要选择DOM节点时,我们使用jQuery选择器,例如:
$('div');
但是当我们想要向服务器发帖时,我们称之为:
$.post({...});
我的问题是,对象如何同时表现为函数和对象?当我使用$('div')
时,我正在调用一个函数,当我使用$.post({...})
时,我正在访问一个对象内的函数。
答案 0 :(得分:3)
$( "h1" ).remove();
大多数jQuery方法都是在jQuery对象上调用的,如上所示;据说这些方法是$.fn
命名空间或“jQuery原型”的一部分,最好被认为是jQuery对象方法。
但是,有几种方法不对选择起作用;据说这些方法是 jQuery命名空间的一部分,最好被认为是核心jQuery方法。
这种区别对于新的jQuery用户来说可能会令人难以置信。以下是您需要记住的内容:
1) 调用jQuery选择的方法位于$.fn
命名空间中,并自动接收并返回选择。
2) $
命名空间中的方法通常是实用程序类型的方法,不适用于选择;它们不会自动传递任何参数,它们的返回值也会有所不同。
答案 1 :(得分:0)
总结:函数是对象。
function foo() {
alert("bar");
}
foo.bar = "foobar";
alert(foo.bar);
foo();
alert(foo);
它们只是您可以添加()
来调用/运行的特殊对象。