zoukankan      html  css  js  c++  java
  • js 命名空间

     
     
    yui的命名空间和继承机制

    var YAHOO = window.YAHOO || {};


    YAHOO.namespace 
    = function(ns) {

        
    if (!ns || !ns.length) {
            
    return null;
         }


        
    var levels = ns.split(".");
        
    var nsobj = YAHOO;

        
    // YAHOO is implied, so it is ignored if it is included
        for (var i=(levels[0== "YAHOO"? 1 : 0; i<levels.length; ++i) {
             nsobj[levels[i]] 
    = nsobj[levels[i]] || {};
             nsobj 
    = nsobj[levels[i]];
         }


        
    return nsobj;
    }
    ;

    YAHOO.extend 
    = function(subclass, superclass) {
        
    var f = function() {};
         f.prototype 
    = superclass.prototype;
         subclass.prototype 
    = new f();
         subclass.prototype.constructor 
    = subclass;
         subclass.superclass 
    = superclass.prototype;
        
    if (superclass.prototype.constructor == Object.prototype.constructor) {
             superclass.prototype.constructor 
    = superclass;
         }

    }
    ;

    YAHOO.namespace(
    "util");
    YAHOO.namespace(
    "widget");
    YAHOO.namespace(
    "example");
  • 相关阅读:
    装饰器实例
    生成器、迭代器脚本实例
    魔法方法和属性
    随机生成验证码
    认证客户端的链接合法性
    将socket通信实现多进程
    线程锁模拟抢票系统
    ntp时间服务器
    蛇形串---------
    两年内计划
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/3599453.html
Copyright © 2011-2022 走看看