• Javascript 静态类的实现


    早些天写过了类的实现,接着我们看看的静态类的实现。这东西在Javascript里用得会非常的频繁,因为针对现在的网页,多个基于同一个类对象的页面不多,往往不同块对象的交互就可以解决问题了,这就需要在JS针对元素定义几个静态类就可以完事了,进入正题。
    这次我们直接看例子:

    01 /***定义静态类***/
    02 var Core = {};
    03 Core.StaticClass = (function(){
    04     var Return = {
    05         Property: "Test Static Property",    //公有属性
    06         Method: function(){    //公有方法
    07             alert(_Field);    //调用私用字段
    08             privateMethod();    //调用私用方法
    09         }
    10     };    //定义返回的公有对象
    11  
    12     var _Field = "Test Static Field";    //私有字段
    13     var privateMethod = function(){    //私有方法
    14         alert(Return.Property);    //调用属性
    15     }
    16  
    17     return Return;    //生成公有静态元素
    18 })();

    这次,我用的是闭包的方式去实现,其中最重要的一点是reutrn Return; 这里会引伸到值类型与引用类型的概念。在js里,Object就是一个引用类型,在闭包里,我会抛出一个包含有属性与方法的Object的引用,这样,也 可以说是把这个Object抛向了外部,实现了公开。StaticClass这个变量接住了Return引用。 对于闭包内部的私有字段与方法都是没有被抛出的,这样就可以形成一个私有的环境。
    很多时候我们都会用这种技巧去对JS进行分块,让程序不会那么的混乱。
    上面的例子没这么干过的兄弟们也可以自己去试试。忘了,刚刚那个例子大家可以这么样去试试。
    Core.StaticClass.Method();
    Core.StaticClass.Property = “Test2″;
    Core.StaticClass.Method();

    原文地址:http://www.css88.com/archives/4492

  • 相关阅读:
    android 进程/线程管理(一)----消息机制的框架
    android的屏幕保持常亮
    android network develop(3)----Xml Parser
    android network develop(2)----network status check
    android network develop(1)----doing network background
    android 开发小记
    转 Android中shape中的属性大全
    转 Android学习 之 ColorStateList按钮文字变色
    《大话设计模式》c++实现 建造者模式
    《大话设计模式》c++实现 外观模式
  • 原文地址:https://www.cnblogs.com/xiaohong/p/2635503.html
Copyright © 2020-2023  润新知