Nodejs模块化

写一段js代码,在浏览器控制台执行和node命令行中执行效果是一样的。不同之处是node中没有一些浏览器对象如window,而多了http、process等对象。

Nodejs模块化步骤:

1.创建模块

2.导出模块

3.加载模块

4.使用模块

比如,创建一个模块car.js ,exports是导出模块的关键,可以理解exports上挂载的就是模块。

car.js1 function add(car) {
2     console.log(‘Add car:‘ + car)
3 }
4
5 var type = ‘Car‘
6
7 exports.add = add
8 exports.type = type

vehicle.js中第一行通过require加载了模块car.js,返回对象并赋值给变量car。这里的car就有了在car.js中exports挂载的内容。

vehicle.js1 var car = require(‘./car‘)
2
3 car.add(‘BMW‘)
4 console.log(‘Type: ‘ + car.type)

如果再加个模块trunk.js ,用法是完全一样的。

trunk.js1 function add(trunk) {
2     console.log(‘Add trunk:‘ + trunk)
3 }
4
5 var type = ‘Trunk‘
6
7 exports.add = add;
8 exports.type = type;

vehicle.js也可以继续模块化暴露,只要使用exports挂载想要暴露的内容即可。

时间: 2024-10-01 06:37:11

Nodejs模块化的相关文章

浅析 Nodejs 模块化

本文只讨论 CommonJS 规范,不涉及 ESM 我们知道 JavaScript 这门语言诞生之初主要是为了完成网页上表单的一些规则校验以及动画制作,所以布兰登.艾奇(Brendan Eich)只花了一周多就把 JavaScript 设计出来了.可以说 JavaScript 从出生开始就带着许多缺陷和缺点,这一点一直被其他语言的编程者所嘲笑.随着 BS 开发模式渐渐地火了起来,JavaScript 所要承担的责任也越来越大,ECMA 接手标准化之后也渐渐的开始完善了起来. 在 ES 6 之前,

nodejs的第三天学习

一. CommonJS 规范 1.1nodejs 与 commonjs 之间的关系: 1)nodejs是一种服务器语言. a)开启服务的能力 b)文件读写的能力 服务器:就是一台安装了服务软件 2)commonjs是nodejs的规范. 1.2commonjs规范的意义: 由于nodejs是用javascript来写的,javascript遵守ECMAScript规范,而ECMAScript这个规范它(如果作为一门后台语言的规范)是不完整的,因为它内容仅仅只是规范了javascript的:词法.

前端模块化 CommonJS AMD ES6 CMD

不使用模模块化的情况 util.js(基础函数库) getFormatDate 函数 a-util.js(业务基础函数库) aGetFormatDate 函数 使用getFormatDate a.js aGetFormatDate // util.js function getFormatDate(date, type) { // type === 1 返回 xxxx // type === 2 返回 xxx // ... } // a-util.js function aGetFormatDa

描述完整的HTTP事物

描述完整的HTTP事物(当我们访问页面的时候,发生了什么?) 1.输入网址 2.解析域名 3.建立连接(传输层,3次握手) 4.发送 5.断开连接(四次挥手,将发送通道和接受通道关闭) Http协议:(应用层的协议,无状态的协议,即每次响应都是新的) 共分为8层,应用层,表示层,会话层,传输层,网络层,数据链层,物理层 (封装, 解析) clinet 发出请求request 给service .然后service响应respond给clinet. get请求和post请求的区别 get,数据小,

从NPM到CNPM

从NPM到CNPM 原文  http://www.cnblogs.com/hufeng/p/5166479.html 主题 npm 引用NPM网站上的一句话:npm loves you ! NPM是Nodejs的包管理工具,目前NPM社区包的数量已超越C.C++,已然成为全球最大的代码工厂; 安装Nodejs后即可开始NPM之旅了,新建一个package.json或者通过npm init,来更好的为NPM服务:配置package.json的dependencies属性和devDependenci

TypeScript学习笔记(八) - 声明文件

本篇将介绍TypeScript的声明文件,并简单演示一下如何编写和使用声明文件.本篇也是这个系列的最后一篇. 一.声明文件简介 TypeScript作为JavaScript的超集,在开发过程中不可避免要引用其他第三方的JavaScript的库.虽然通过直接引用可以调用库的类和方法,但是却无法使用TypeScript诸如类型检查等特性功能.为了解决这个问题,需要将这些库里的函数和方法体去掉后只保留导出类型声明,而产生了一个描述JavaScript库和模块信息的声明文件.通过引用这个声明文件,就可以

js依赖管理之bower

twitter 出品的包管理工具- bower:基于nodejs模块化思想:致力于将客户端功能模块化及管理各个模块之间的联系. 一.安装方法 bower依赖于node.npm及git(需要从git仓库上获取一些代码包),在node及npm环境下npm install bower -g 二.操作 bower install 安装bower.json(使用bower init命令创建一个bower.json文件)中所写的依赖模块: 安装某一模块时使用bower install <package>

前端(开发环境) 5

一: 1 IED:webstorm,sublime,vscode,atom           (插件很重要!!!) 2 网络Git服务器:coding.net    github.com 3 常用git命令: git add . (添加) git commit -m "xxx"(更新到本地仓库) git push origin master(更新到远程仓库) git pull origin master (获取最新的版本) git branch git checkout -b xxx

requirejs 初探

作为一个前端模块化设计和加载的框架,我们该好好理解下. 引用 <script data-main='.. 主文件路径,相对于要请求的页面' src='requirejs地址'>假如我们主文件时main.js 我们需要引用jquery,underscore,backbone require.config({ baseUrl : 'js的基本路径',//可以忽略 paths   : { 'jquery': 'jquery.min', 'underscore': 'underscore', 'bac