zoukankan      html  css  js  c++  java
  • CommonJS的模块规范

    1.模块引用

    math.js

    function add(v1,v2){
        return v1+v2;
    }
    module.exports.add = add;
    //也可以用.exports.add = add;不过建议用module.exports,因为有时候exports需要直接赋值,如果直接使用exports=XXX,只是改变了形参

    main.js

    var m = require('math'); //也可以用math.js,一般省略“.js”
    
    var result = m.add(4, 1);//m其实就是math.js中的exports变量
    console.log(result); 

    它的意义在于将类聚的方法和变量等限定在私有的作用域中。CommonJS构建的这套模块导出和引入机制使得用户完全不必考虑变量污染。 

     2. 代码本质

     编译和执行是引入文件模块的最后一个阶段,定位到具体文件后,Node会新建一个Module对象,然后根据路径载入并编译。

     在执行之后,模块的exports属性被返回给了调用方。

    3. 既然exports是module对象的一个属性,直接用exports即可,那么为什么还需要存在module.exports

       因为有时候require需要引入一个类,这个时候就需要使用module.exports=function(){XXX}。

  • 相关阅读:
    django错误参考
    Pyhton模块学习
    jmeter
    SQL SERVER 2008
    touch的属性
    Sql Server Alter语句
    安装LoadRunner提示缺少vc2005_sp1_with_atl..
    sql语句
    数据库的知识
    十天学会<div+css>横向导航菜单和纵向导航菜单
  • 原文地址:https://www.cnblogs.com/dongfangchun/p/15635225.html
Copyright © 2011-2022 走看看