js框架设计1.1命名空间笔记

借到了司徒正美的写的js框架设计一书,司徒大神所著有些看不太懂,果然尚需循序渐进,稳扎js基础之中。

第一张开篇司徒阐述了种子模块的概念

种子模块亦为核心模块,框架最先执行模块,司徒见解应包含:对象扩展、数组化,类型判定,简单事件的绑定和写在,无冲突处理,模块加载与domReady。应具有扩展性、常用、稳定等特点。

1.1 命名空间

一观各大框架,基本是定义一个全局变量作为命名空间,如Ext的Ext等,大体抽象取例为:

if(typeof(Ten)==='undefined'){
    Ten={};
    Ten.Function = {};  
    Ten.JSONP = new Ten.Class();
}

为了能够让几个库的命名能够共存,大家不抢着用'$',jquery有解决这种冲突的代码写法:

var _jQuery = window.jQuery;
// 初始化jquery之前保存window.jQuery。
_$ = window.$
//先把可能存在别的要用$符号的框架 用同名变量保存起来

    
jQuery.extend({
        noConflict: function( deep ) {
        if ( window.$ === jQuery ) {
                window.$ = _$;
        }
        if ( deep && window.jQuery === jQuery ) {
                window.jQuery = _jQuery;
        }
        return jQuery;
        }
});

这样就可以多库共存了 ,但是ext等其他框架就无法这样子做了。

淘宝UED对这个的讲解如下:http://ued.taobao.com/blog/2013/03/jquery-noconflict/

转载于:https://www.cnblogs.com/ffjiang/p/3812004.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值