jQuery.extend()和jQuery.fn.extend()是一样的...对吗?

这个问题在这里已经有了答案:

  • jQuery.extend和jQuery.fn.extend的区别? 5个答案

  • $.extend只是扩展一个对象

    var obj1 = {'name' : 'Progo'};
    var obj2 = {'value' : 'stack overflow'};
    
    $.extend(obj1, obj2);
    
    // obj1 is now {'name' : 'Progo', 'value' : 'stack overflow'}
    

    小提琴

    jQuery.fn.extend扩展了jQuery原型

    jQuery.fn.extend({
      turn_red: function() {
        return this.each(function() {
          this.style.color = 'red'
        });
      }
    });
    
    // gives you
    
    $('elements').turn_red(); // sets color to red
    

    小提琴


    关键区别在于:

    // extend jQuery itself if only one argument is passed
    if ( length === i ) {
        target = this;
        --i;
    }
    

    this将根据是否调用$.extend$.fn.extend而有所不同。

    链接地址: http://www.djcxy.com/p/14213.html

    上一篇: jQuery.extend() and jQuery.fn.extend() are the same… Right?

    下一篇: jQuery.extend() deep clone nested objects