目录
一、extend方法
二、添加一些工具类方法:$.xxx()
实现1:
实现2:
一、extend方法
jQuery.fn.extend = jQuery.extend = function(...args){let target,source=[];source=[...args];//判断2种情况 //$.extend({}) -->给$添加属性//$.fn.extend({}) -->给$.fn添加属性//参数个数>1,就是给第一个实参添加属性// $.extend -->jQuery.extend 方法调用形式if(args.length === 1){//$.extendtarget=this;}else{//参数个数>1target = args[0]; //目标对象就是第一个实参source.splice(0,1); //源对象就是第二个及其后面的实参}//实现拷贝部分的逻辑:Object.assign(target,...source)return target;}
二、添加一些工具类方法:$.xxx()
例如: $.ajax $.post $.get $.type $.each
实现1:
jQuery.extend({each(){console.log('each方法');},ajax(){console.log('ajax方法');}})
调用1:
$.each(); $.ajax();
实现2:
//添加dom方法jQuery.fn.extend({attr(){console.log('attr方法');},on(){console.log('on方法');}})
调用2:
$("div").attr(); $("div").on();