<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="js/jquery-3.1.0.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
通过$符号调用的函数称作工具函数,要给工具函数添加新插件,需要通$.extend()方法
使用extend给jq扩展新功能,参数类型是一个对象,属性名就是新方法的名字,属性的值就是新方法的功能函数
下面代码中,通过$.extend()向jQuery添加了一个sayHello函数,然后通过$直接调用。
$.extend({
sayHello:function(name){
console.log('hello'+name)
}
});
$.sayHello();
$.extend({
sayHello:function(name){
console.log('hello'+(name ? name:'葛二蛋'));
}
});
$.sayHello('媛儿');
比如一个自定义的console,输出特定格式的信息,定义一次后可以通过jQuery在程序中任何需要的地方调用它。
$.extend({
log: function(message) {
//获取当前的年月日、时分秒
var now = new Date,
y = now.getFullYear(),
m = now.getMonth() + 1,
d = now.getDate(),
h = now.getHours(),
mi = now.getMinutes(),
s = now.getSeconds();
var time = y + '/' + m + '/' + d + '' + h + ':' + mi + ':' + s;
console.log(time + message);
}
});
$.log("老师你是痘痘吗")
var obj1 = {
name: '老汉',
age: 88
}
var obj2 = {
name: '推车',
size: 100
}
var obj = $.extend(obj1, obj2);
console.log(obj);
console.log(obj1);
使用extend()方法合并多个对象,会把多个对象的属性合并对象里,并返回,如果属性值同名,则属性值是最后一个属性值
</script>
</head>
<body>
</body>
</html>