美文网首页
CommonJS规范

CommonJS规范

作者: 尘满面鬓微霜 | 来源:发表于2017-04-07 10:26 被阅读0次

    概述

    每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。每个模块内部,module变量代表当前模块。这个变量是一个对象,它的exports属性(即module.exports)是对外的接口。加载某个模块,其实是加载该模块的module.exports属性。

    • module.exports对外的接口.
    • require方法用于加载模块。

    Module对象

    每个模块内部,都有一个module对象,代表当前模块。它有以下属性。

    • module.id 模块的识别符,通常是带有绝对路径的模块文件名。
    • module.filename 模块的文件名,带有绝对路径。
    • module.loaded 返回一个布尔值,表示模块是否已经完成加载。
    • module.parent 返回一个对象,表示调用该模块的模块。
    • module.children 返回一个数组,表示该模块要用到的其他模块。
    • module.exports 表示模块对外输出的值。

    require命令

    require命令的基本功能是,读入并执行一个JavaScript文件,然后返回该模块的exports对象。如果没有发现指定模块,会报错。

    • 加载规则:后缀名默认为.js。
      如果参数字符串以“/”开头,则表示加载的是一个位于绝对路径的模块文件。
      如果参数字符串以“./”开头,则表示加载的是一个位于相对路径。
      如果参数字符串不以“./“或”/“开头,则表示加载的是一个默认提供的核心模块(位于Node的系统安装目录中),或者一个位于各级node_modules目录的已安装模块(全局安装或局部安装)。

    相关文章

      网友评论

          本文标题:CommonJS规范

          本文链接:https://www.haomeiwen.com/subject/vtwsottx.html