您的位置:首页 > Web前端 > JQuery

jQuery里面$.fn和$.extend

2016-03-18 16:30 447 查看
jQuery源码里面fn的描述是这样的

jQuery.fn = jQuery.prototype = {
   init: function( selector, context ) {//.... 
   //......
};
通过这个可以看出来,这个里的fn和我们平时用的prototype是一样的,

js里面没有类的概念,但是这里用类来理解会方便一点,jquery便是一个封装好的类,$("#id")返回一个jquery类生成的实例,(相当于new了一个对象)

jQuery.fn.test = function(){
.....
}


调用的时候 $("#id").test();

jQuery.extend(object);相当于添加了一个静态方法,是吧object添加到jquery的全局对象里面,

比如说

$.extend({
_test:function(){alert('_test');}
});
调用时候直接是  $._test();不需要生成一个实例
类似于
var _test = {}
_test = $.extend(_test,{_do:function(){console.log('ok')}})
_test._do()
这里_do只是添加到_test这个对象里,并不是到原型链
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: