• jQuery extend


    摘自API:

    jQuery.extend([],target,object1,[objectN])

      用一个或多个其他对象来扩展一个对象,返回被扩展的对象.

      如果不指定target,则给JQuery命名空间本身进行扩展.这有助于插件作者为jQuery增加新方法,如果第一个参数设置为true,则jQuery返回一个深层次的副本.递归地复制找到的任何对象.否则的话,副本会对原对象共享结构.未定义的属性将不会被复制.然而从对象的原型继承的属性将会被复制.

    target:一个对象,如果附加的对象被传递给这个方法 ,它将接受新的属性,如果它是唯一的参数将扩展jQuery的命名空间.

    object1:待合并到第一个对象的对象.

    objectN:待合并到第一个对象的队形.

    示例:

     

    1. 合并setting和options,修改并返回setting
    
    代码
    
    var setting = {validate:false,limit:5,name:"foo"};
    
    var options = {validate:true,name:"bar"};
    
    jQuery.extend(settings,options);
    
     结果:
    
    settings = {validate:true,limit:5,name:"bar"}
    
      2. 合并defaults和options,不修改defaults.
    
    代码:
    
    var empty = {};
    
    var defaults  = {validate:true,name:"bar"};
    
    var settings = jQuery.extend(empty,defaults,options);
    
    结果:
    
    settings == {validate:teue,limit:5,name:"bar"}
    
    empty == {validate:true,limit:5,name:"bar"}

    var newcss = jQuery.extend(css1,css2) newcss 就是合并的新对象 css1的属性被覆盖.而且会继承css1没有的css2的属性
    var newcss = jQuery.extend({},css1,css2) newcss就是合并的新对象,而且没有破坏css1的结构.

    摘自 博客:

    1.扩展jQuery静态方法

      $.extend({

        test : function(){alert("test函数")}

      })

      用法: $.test()

    2.合并多个对象:

    3.深度嵌套对象:

      新的extend()允许你更深程度的合并嵌套对象.

       

     //以前的 .extend()
    
      jQuery.extend(
    
        {name:"john",location:{city:"Boston"}},
    
        {last:"Resig",location:{state:"MA"}}
        );
    
       结果: {name:"john",last:"Resig",location:{state:"MA"}}
      //新的更深入的 .extend()
    
      jQuery.extend(true,
    
        {name:"John",location:{city:"Boston"}},
        {last:"Resig",location:{state:"MA"}}
      );
    
      结果: {name:"John",last:"Resig",location:{city:"Boston",state:"MA"}}

      I got it

  • 相关阅读:
    Linux内存分析
    mysql 分表
    安装YCM
    c/c++ 之静态库
    ubuntu20 宽带连接
    数据对齐
    计算机中浮点数的表示
    整数的表示
    信息的储存
    SparseTable ST表
  • 原文地址:https://www.cnblogs.com/moli-/p/6547221.html
Copyright © 2020-2023  润新知