jQuery中extend的用法

jQuery中extend有三种用法bash

用法一:给jQuery类添加方法this

$.extend({
    show:function(){
        console.log('I will show this string')
    }
})
$.show() // I will show this string复制代码

用法二:给Jquery的原型添加方法,调用添加的方法时须要获取Jquery实例spa

<div class="test"></div>
$.fn.extend({
    show:function(){
        console.log('I will show this string')
    }
})
$('.test').show() // I will show this string复制代码

用法三:继承、浅拷贝和深拷贝code

1.浅拷贝对象

var a = {}
var b = {'name':'zhangsan'}
$.extend(a,b)
console.log(a.name) // zhangsan复制代码

若是b这个对象中嵌套对象,那么改变a后,b会跟着改变继承

var a = {}
var b = {'people': {'name': 'lisi'}}
$.extend(a,b)
a.people.name = 'wangwu'
console.log(b.people.name) // wangwu复制代码

此时,b中的name改变了,碰到这种状况,咱们须要进行深拷贝原型

2.深拷贝string

var a = {}
var b = {'people': {'name': 'lisi'}}
$.extend(true,a,b)
a.people.name = 'wangwu'
console.log(b.people.name) // lisi复制代码

3.继承,不管后面跟多少个对象,都将成为第一个对象的属性it

var a = {'sex': '1'}
$.extend(a,{'name':'zhangsan'},{'people':{'name':'lisi'}})
console.log(a) // {sex: "1", name: "zhangsan", people: {'name':'lisi'}}复制代码
相关文章
相关标签/搜索