zoukankan      html  css  js  c++  java
  • Ext.apply(src,apply) 和 Ext.applyIf(src,apply)比较(转)


    Ext.onReady(function(){

    /*
    * Ext.apply(src,apply) 和 Ext.applyIf(src,apply) 两个方法的使用和区别比较
    */


    //Ext.apply(src,apply)方法用于扩展和修改原有对象的属性或方法
    //定义对象src
    var src = {name:"tom",age:22};
    //定义对象apply
    var apply= {sex:"男",age:33,name:"jack",sal:10000};
    //使用Ext.apply方法对src对象进行属性扩展 或方法扩展
    Ext.apply(src,apply);
    //
    //查看src多有的属性和属性值
    for(var attr in src ){
    document.write(attr +"--"+src[attr])
    document.write("<br>")
    }
    //结果如下
    //name--jack
    //age--33
    //sex--男
    //sal--10000

    //从源代码和测试结果可以看出:
    //用apply对象中的属性和src对象中属性进行逐个比较,如果在src中不存在该属性就赋值复制到src中,如果有相同属性,就覆盖原有属性的值
    //Ext.apply方法扩展之后的结果就为上面的测试结果了



    //***************分隔线***********************
    document.write("<br>")

    //Ext.applyIf(src,apply)和Ext.apply(src,apply)的区别在于
    //如果原对象中存在当前正在比较的属性,那么就不进行复制了,多以当然就不会修改该属性的值了

    // 例如:
    var srcif = {name:"tom",age:22};
    var applyif= {sex:"男",age:33,name:"jack",sal:10000};

    Ext.applyIf(srcif,applyif);
    for(var attr in srcif){
    document.write(attr+"----"+srcif[attr])
    document.write("<br>")
    }
    //结果是
    //name----tom
    //age----22
    //sex----男
    //sal----10000


    })
    ---------------------
    作者:南京煜之隆
    来源:CSDN
    原文:https://blog.csdn.net/responsecool/article/details/41117269
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    Altium Designer 16 问题解决
    IAR FOR AVR 仿真过程中出现全局变量值不断随意变化的问题
    linux '--stdin'错误 -批量修改密码
    EmWin 字体相关函数
    EmWin 文本显示函数
    Win10下 usart驱动PL2303无法安装的问题
    EmWin 接触---基础函数
    Linux 下 Samba 服务器搭建
    MPLAB X IDE V4.15 创建工程,编译,问题处理
    EF Core MVC
  • 原文地址:https://www.cnblogs.com/qdck/p/10649606.html
Copyright © 2011-2022 走看看