• javascript模块化


    将代码模块化,可以实现代码的重用,用以支持大规模的程序开发。可以将代码组织到类来实现代码模块化也可以采用其他方式。一般,模块是一个独立的js文件,模块文件可以包含类的定义、一组相关的类、一个使用函数库等。另外,模块文件文件名应该与命名空间匹配

    Javascript并没有定义用以支持模块的语言结构,例如不能通过使用imports和exports(imports和exports仍是javascript保留的关键字),很多js库和客户端框架都包含了模块系统,例如在Nodejs中可以使用require导入需要的模块。

    代码模块化时,不同的模块必须避免修改全局执行上下文,以保证后续模块在他们所期望进行的原始上下文中进行。

    1. 使用对象作为命名空间,将函数和值作为命名空间对象属性存储,而不是定义全局函数和变量,用以保持干净的全局命名空间

    eg:

    //定义set属性SinletonSet
    var sets = {};
    sets.SingletonSet = sets.AbstractEnumerableSet.extend();
    
    //使用
    var ss = new sets.SingletonSet();

    使用时也可以将常用的值导入到命名空间中,eg:

    //定义set属性SinletonSet
    var sets = {};
    sets.SingletonSet = sets.AbstractEnumerableSet.extend();
    
    //使用
    
    var set = sets.SingletonSet();
    var ss = new set();

    2.  模块中一些辅助函数或者方法如果要自爱模块外部不可见,可以将模块定义在某个函数的内部。如果想使代码在一个私有命名空间中运行,只需给这段代码奖赏前缀(function(){}())

    eg:

    var Set = (function invoke(){
        function Set(){
            .....
        }
        .......
        return Set;
    }());

     

  • 相关阅读:
    Java 在方法和作用域内的内部类
    java 内部类和向上转型
    java 内部类使用 .this 和 .new
    java innerclasses(内部类)
    Java过滤器与SpringMVC拦截器之间的关系与区别
    Maven异常:Could not find artifact
    soapUI测试webservice(参数为xml格式的处理方式)
    maven仓库加载本地包依赖
    spring data jpa的学习总结
    Java 中常用缓存Cache机制的实现
  • 原文地址:https://www.cnblogs.com/wishyouhappy/p/3756728.html
Copyright © 2020-2023  润新知