node.js之模块系统

简介: node.js之模块系统

模块系统

console.log(""+a);  得到的a也是一个字符串;
console.log("",a);  得到的a是原来的类型 数字型,布尔型 等等。
  • 加载和导入
    加载 :require 导入:exports
    node中,exports = module.exports,且最后 return module.exports exports只是module.exports的简便方法 (引用类型)
module {
  exports {
}
}
导出多个成员: exports.xxx = xxx
      module.exports = {}
导出单个成员:module.exports = ?
  • require是一个方法;
  • 它的作用1、 加载文件模块并执行里面的代码;2、拿到被加载文件模块导出的接口对象
  • 在每个文件模块中都提供了一个对象:exports
  • exports默认是一个空对象
  • 要做的就是把所有需要被外部访问的成员挂载到这个exports对象中。
  • 在node中,模块有三种:
  1. 具名的核心模块,例如 fs,http
  2. 用户自己编写的文件模块
    1、相对路径必须加./ 2、可以省略后缀名(推荐) 3、相对路径中的./ 不能省略,否则报错
    iii. 第三方模块
    art-template (npm install)
  • 在 node中,没有全局作用域,只有模块作用域。
    外部访问不到内部 内部也访问不到外部 默认都是封闭的
    既然是模块作用域。那如何让模块与模块之间进行通信。有时候,我们加载文件模块的目的不是为了简简单单的执行里面的代码,更重要的是为了使用里面的某个成员。

核心模块

1、文件操作的fs
2、http 服务的 http
3、url 路径操作模块
4、path 路径处理模块
5、os操作系统信息

node为js提供了很多服务器级别的API,这些API绝大多数都被包装到了一个具名的核心模块中了。

例如文件操作的fx核心模块,http服务构建的http模块,path路径操作模块,os操作系统信息模块。。。

要想使用核心模块必须:

var fs = require('fs');
var http = require('http');
相关文章
|
6天前
|
JavaScript 前端开发
用html+javascript打造公文一键排版系统12:删除附件说明中“附件:”里的空格
用html+javascript打造公文一键排版系统12:删除附件说明中“附件:”里的空格
|
6天前
|
前端开发
用html+javascript打造公文一键排版系统3:获取参数设置、公文标题排版
用html+javascript打造公文一键排版系统3:获取参数设置、公文标题排版
用html+javascript打造公文一键排版系统1:设计界面
用html+javascript打造公文一键排版系统1:设计界面
|
2月前
|
JavaScript 前端开发 开发者
Vue.js 框架大揭秘:响应式系统、组件化与路由管理,震撼你的前端世界!
【8月更文挑战第27天】Vue.js是一款备受欢迎的前端JavaScript框架,以简洁、灵活和高效著称。本文将从三个方面深入探讨Vue.js:响应式系统、组件化及路由管理。响应式系统为Vue.js的核心特性,能自动追踪数据变动并更新视图。例如,通过简单示例代码展示其响应式特性:`{{ message }}`,当`message`值改变,页面随之自动更新。此外,Vue.js支持组件化设计,允许将复杂界面拆分为独立且可复用的组件,提高代码可维护性和扩展性。如创建一个包含标题与内容的简单组件,并在其他页面中重复利用。
58 3
|
11天前
|
JavaScript 前端开发
Vue、ElementUI配合Node、multiparty模块实现图片上传并反显_小demo
如何使用Vue和Element UI配合Node.js及multiparty模块实现图片上传并反显的功能,包括前端的Element UI组件配置和后端的Node.js服务端代码实现。
14 1
Vue、ElementUI配合Node、multiparty模块实现图片上传并反显_小demo
|
2月前
|
JavaScript 数据可视化
JS如何优雅的实现模块自动滚动展示
【8月更文挑战第22天】JS如何优雅的实现模块自动滚动展示
20 1
JS如何优雅的实现模块自动滚动展示
|
26天前
Nest.js 实战 (十二):优雅地使用事件发布/订阅模块 Event Emitter
这篇文章介绍了在Nest.js构建应用时,如何通过事件/发布-订阅模式使应用程序更健壮、灵活、易于扩展,并简化服务间通信。文章主要围绕@nestjs/event-emitter模块展开,这是一个基于eventemitter2库的社区模块,提供了事件发布/订阅功能,使得实现事件驱动架构变得简单。文章还介绍了如何使用该模块,包括安装依赖、初始化模块、注册EventEmitterModule、使用装饰器简化监听等。最后总结,集成@nestjs/event-emitter模块可以提升应用程序的事件驱动能力,构建出更为松耦合、易扩展且高度灵活的系统架构,是构建现代、响应迅速且具有高度解耦特性的Nest.
用html+javascript打造公文一键排版系统14:为半角和全角字符相互转换功能增加英文字母、阿拉伯数字、标点符号、空格选项
用html+javascript打造公文一键排版系统14:为半角和全角字符相互转换功能增加英文字母、阿拉伯数字、标点符号、空格选项
|
6天前
|
存储 文字识别 前端开发
用html+javascript打造公文一键排版系统13:增加半角字符和全角字符的相互转换功能
用html+javascript打造公文一键排版系统13:增加半角字符和全角字符的相互转换功能
|
6天前
|
SQL 安全 数据库
用html+javascript打造公文一键排版系统2:显示源码/显示预览、清除格式
用html+javascript打造公文一键排版系统2:显示源码/显示预览、清除格式