• Node.js(2)-模块化管理


    一、Node的模块化管理

    1、模块化:node应用程序由模块组成。遵循的是Commonjs模块规范。使用模块管理的好处是隔离模块的作用域,避免出现命名冲突

    2、什么是Commonjs:是一套代码的规范,构建一个在浏览器之外的JavaScript语言的生态系统

    3、Commonjs规范主要内容

            (1)通过module.exports导出对外的变量或接口

            (2)通过require将其他模块导入到当前的作用域中

    4、Commonjs的特点

            (1)所有模块都运行在当前模块的作用域中,不会污染全局作用域

            (2)模块同步加载,根据文件中模块出现的顺序依次加载

            (3)模块可以多次加载,但只有在第一次加载时运行,其他的加载会放入缓存中,后面再使用时直接从缓存中读取

    二、node的module对象

    1、在node内部定义了一个module构造函数,属性有:

            (1)id:表示模块的标识符

            (2)parent:代表调用模块的模块

            (3)exports:表示导出的值

            (4)paths:表示模块的查找路径。

            (5)path:当前模块所在的路径

            (6)filename:当前模块的文件名

    强调:在Commonjs规范中所有的模块都是Module(对象)

    2、exports变量:该变量指向module.exports,作用是方便用户操作

    1. exports.area = function(r){
    2. return Math.PI*r**2
    3. }

    强调:不能直接给exports赋一个值,这样就切断了exports与module.exports之间的连续。不能进行导出了

    三、require命令:是node的内置命令,主要用于加载模块文件

    1、作用

    导入并运行JavaScript文件,返回的是exports对象

    2、加载规则

            (1)加载文件的默认后缀名是:.js

            (2)如果参数字符串以"/"开头,表示加载的文件是位于绝对路径下的文件

            (3)如果参数字符串以"./"开头,表示加载的文件是位于相对路径下的文件

            (4)如果参数字符串不以"/"或"./"开头,则表示加载的是一个默认提供的核心模块(位于node的系统安装目录中),或者一个位于各级node_modules目录的安装模块(全局安装或局部安装)

  • 相关阅读:
    Linux——文件系统
    多功能原型设计工具汇总,喜欢记得收藏
    AI学习教程:AI(Adobe lliustrator)快速入门
    2. redis常见数据类型
    常见面试题-Redis专栏(一)
    数字孪生与GIS数据为何高度互补?二者融合后能达到什么样的效果?
    动力节点最新Redis7笔记-Redis概述
    nginx优化--压缩
    【数据结构与算法】队列的实现
    【课程设计|MFC】学生成绩分析系统(含课程报告+源码)
  • 原文地址:https://blog.csdn.net/m0_65729457/article/details/127928126