zoukankan      html  css  js  c++  java
  • js中的对象封装

    用json封装,用构造函数封装,用原型函数进行封装,原型函数最节省内存,将大部分相同的属性或方法放在静态区域中,创建对象时,如果对象属性与默认的不一样,则可以在该对象中覆盖静态区域中的值,不影响其他对象的属性。

    <html>
        <head>
            <title>函数的封装</title>
            <script type="text/javascript">
    // 用json创建对象
    // 特点: 1,生成麻烦 2,生成出来的对象之间没有什么关联
    var iphone1={'pinpai':'苹果','color':'黑色','weight':'100g','msg':function(){alert('发短信')}};
    var iphone2={'pinpai':'苹果','color':'黑色','weight':'102g','msg':function(){alert('发短信')}};
    var iphone3={'pinpai':'苹果','color':'黑色','weight':'104g','msg':function(){alert('发短信')}};
    
    // 用构造函数封装对象
    //特点:1,创建过程比较简单,2,浪费内存
    
    function shouji(zhongliang){
       this.pinpai='苹果';
       this.color='黑色';
       this.weight=zhongliang;
       this.msg=function(){alert('发短信')}
    }
    var iphone1=new shouji('100g');
    var iphone2=new shouji('103g');
    var iphone3=new shouji('104g');
    
    //用原型方式封装对象
    //省内存
    function shouji(zhongliang){
        this.weight=zhongliang;
    }
    shouji.prototype.pinpai='苹果';//将pinpai,color属性添加到静态区域中,任何对象都可以共享,如果个别对象属性不同,则可以把个别对象的属性改一下,不影响其他对象的属性
    shouji.prototype.color='黑色';
    var iphone1=new shouji('100g');
    var iphone2=new shouji('103g');
    var iphone3=new shouji('104g');
    
            </script>
        </head>
        <body>
            
        </body>
    </html>
    
  • 相关阅读:
    DAY 5 搜索
    DAY 4 基础算法
    P2114 [NOI2014]起床困难综合症
    UVA10140 Prime Distance
    day 2 DP专场
    DAY 3 数论专场
    day 2 下午 骑士 基环树+树形DP
    day 1 晚上 P2824 [HEOI2016/TJOI2016]排序 线段树
    帝国后台加网站地图
    手风琴效果
  • 原文地址:https://www.cnblogs.com/lzzhuany/p/4554925.html
Copyright © 2011-2022 走看看