我已经使用了jQuery一段时间,并了解选择器和链的基础知识。我现在准备深入研究高级JavaScript概念。现在我对jQuery的多角色感到困惑。
例如,
jQuery.add(...)
在我看来,jQuery是一个javascript对象,我们可以发送消息。
jQuery(function() {...}) or jQuery(...selector...)
这一次,jQuery似乎是一个可以带一些参数的javascript函数。
究竟是什么?
答案 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。
我一直认为它是另一种利用javascript来简化编码的语言。它可以作为在一行编码而不是20+中执行操作的函数,一个将50多个字符缩短为10个以上字符的选择器,并且它可以执行更多操作。
如果您真的想深入编写代码,可以下载jQuery的开发版本。
答案 2 :(得分:0)
首先,请记住jQuery是以这样的方式编写的:
jquery(...);
相当于:
new jQuery(...);
更多细节 here
其次,$
是jQuery
的同义词。
第三,理解javascript允许调用函数而不分配返回的内容也很重要。 var foo = bar(auguments);
和bar(auguments);
都是法律声明。
最后,javascript函数是第一类对象。它们可以传递给其他函数,由其他函数返回,通过赋值别名,以及其他对象的属性。
有了这种理解,应该更容易看到$(selector);
和$(function(){...});
等语句的工作方式和原因。