jQuery的类型是javascript对象,函数还是方法?

时间:2012-07-26 09:23:40

标签: javascript jquery

我已经使用了jQuery一段时间,并了解选择器和链的基础知识。我现在准备深入研究高级JavaScript概念。现在我对jQuery的多角色感到困惑。

例如,

jQuery.add(...) 

在我看来,jQuery是一个javascript对象,我们可以发送消息。

jQuery(function() {...}) or jQuery(...selector...)

这一次,jQuery似乎是一个可以带一些参数的javascript函数。

究竟是什么?

3 个答案:

答案 0 :(得分:2)

console.log(typeof jQuery);输出'>功能':)

也试试这个:

var some_name = function() { return 42; };
some_name.some_property = 84;
some_name.some_method = function() { return 63; };

typeof some_name; // outputs "function"

// but... 
some_name.some_method(); // ...is also possible :)

答案 1 :(得分:0)

很难比它已经描述的更深入地解释:

  

jQuery是一个快速简洁的JavaScript库,可以简化HTML   文档遍历,事件处理,动画和Ajax交互   用于快速Web开发。 jQuery旨在改变它的方式   你写JavaScript。

Source: jQuery.com

我一直认为它是另一种利用javascript来简化编码的语言。它可以作为在一行编码而不是20+中执行操作的函数,一个将50多个字符缩短为10个以上字符的选择器,并且它可以执行更多操作。

如果您真的想深入编写代码,可以下载jQuery的开发版本。

jQuery: Development Version

答案 2 :(得分:0)

首先,请记住jQuery是以这样的方式编写的:

jquery(...);

相当于:

new jQuery(...);

更多细节 here

其次,$jQuery的同义词。

第三,理解javascript允许调用函数而不分配返回的内容也很重要。 var foo = bar(auguments);bar(auguments);都是法律声明。

最后,javascript函数是第一类对象。它们可以传递给其他函数,由其他函数返回,通过赋值别名,以及其他对象的属性。

有了这种理解,应该更容易看到$(selector);$(function(){...});等语句的工作方式和原因。