zoukankan      html  css  js  c++  java
  • 【学习】js学习笔记:对象的遍历和封装特性

    1、对象的属性访问:

    对象.属性

    对象[属性],但中括号中必须是字符串

    2、属性的遍历:

    for in方法举例:

    var ren={};

    ren.name="名字";

    ren.eat=function(){

             alert("吃饭");

             }

            

    for(var i in ren){

             alert(ren[i]);

             }

    3、封装-工厂函数,这种方式格式不规范

    function dianshi(color,size,brand){

                       var tv={};

                       tv.color=color;

                       tv.size=size;

                       tv.brand=brand;

                       tv.play=function(){

                                alert("玩");

                                }

                       tv.look=function(){

                                alert("看");

                                }

                       return tv;

                       }

            

             var d1=dianshi("red","42cun","sony");

             var d2=dianshi("blue","40cun","长虹");

             var d3=dianshi("green","30cun","康佳");     

            

             alert(d1.color);

             alert(d2.size);

             alert(d3.brand);

    4、封装-构造函数,这种方式格式更正式

    function tv(color,size,brand){          

                       this.color=color;

                       this.size=size;

                       this.brand=brand;

                       this.play=function(){

                                alert("玩");

                                }

                       this.look=function(){

                                alert("看");

                                }

                       }

            

             var d1=new tv("red","42cun","sony");

             var d2=new tv("blue","40cun","长虹");

             var d3=new tv("green","30cun","康佳");      

            

             alert(d1.color);

             alert(d2.size);

             alert(d3.brand);

    5、封装-代码段

    prototype方法:将共有的方法和属性添加到代码段中

    function tv(color,size,brand){          

                       this.color=color;

                       this.size=size;

                       this.brand=brand;            

                       this.look=function(){

                                alert("看");

                                }

                       }

                      

             tv.prototype.play=function(){

                                alert("玩");

                                }

            

             var d1=new tv();

             d1.play();

    6、混合方法:几种方式的混合,扬长避短

    function tv(color,size,brand){          

                       this.color=color;

                       this.size=size;

                       this.brand=brand;            

                       this.look=function(){

                                alert("看");

                                }

                       }

                      

             tv.prototype.obj={name:"名字"}    

                      

             tv.prototype.play=function(){

                                alert("玩");

                                }

            

             var d1=new tv();

            

             d1.play();

             alert(d1.obj.name);

  • 相关阅读:
    怎样写APP计划书-20150313早读课
    机器学习经典算法具体解释及Python实现--线性回归(Linear Regression)算法
    iOS的isnan函数
    过滤NSString中的Emoji
    开工了,发个招聘~长虹智能交易平台英雄帖(有截止日期,事实上长期有效,标题要长,:)
    C语言变长參数的认识以及宏实现
    Protobuf语言指南
    Python内存管理:垃圾回收
    【bzoj1875】【SDOI2009】【HH去散步】
    Drawable资源的初步使用
  • 原文地址:https://www.cnblogs.com/xiaoxianweb/p/5726506.html
Copyright © 2011-2022 走看看