11-《Node.js开发指南》-模块和包
什么是模块?
一个node.js文件就是一个模块,这个文件可能是js代码,json或者编译过的C/C++扩展
创建及加载模块
```
//a.js
var name;
exports.setName = function(thyName){
name = thyName;
};
exports.sayHello = function(){
console.log("hello"+name);
};
```
```
//b.js
var myModule = require('./a.js');
myModule.setName('柠檬不酸');
myModule.sayHello();
```
对象封装到模块中
第一种
```
function Hello(){
var name;
this.setName = function (thyName){
name=thyName;
}
this.sayHello = function(){
console.log('hello'+name)
}
}
exports.Hello=Hello;
```
```
var Hello = require('./c.js').Hello;
hello = new Hello();
hello.setName('柠檬不酸le');
hello.sayHello();
<p>第二种</p>
//c.js
function Hello(){
var name;
this.setName = function (thyName){
name=thyName;
}
this.sayHello = function(){
console.log('hello'+name)
}
}
module.exports = Hello;
//d.js
var Hello = require('./c.js');
hello = new Hello();
hello.setName('柠檬不酸');
hello.sayHello();
注意:不可以通过exports 直接赋值代替对module.exports赋值;
exports实际上只是一个和module.exports指向同一个对象的变量,它本身会在模块执行结束后释放,
但module不会,因此只能通过指定module.exports来改变访问接口;
<h2>创建包</h2>
<p>包是在模块基础上更深一步的抽象,它将某个独立的功能封装起来,用于发布,更新,依赖管理和版本控制</p>
<p>Node.js的包是一个目录,其中包含一个JSON格式的包说明文件package.json</p>
11-《Node.js开发指南》-模块和包的更多相关文章
- Node.js开发指南中的例子(mysql版)
工作原因需要用到nodejs,于是找到了<node.js开发指南>这本书来看看,作者BYVoid 为清华大学计算机系的高材生,年纪竟比我还小一两岁,中华地广物博真是人才辈出,佩服. 言归正 ...
- 学习Nodejs:《Node.js开发指南》微博项目express2迁移至express4过程中填的坑
<Node.js开发指南>项目地址https://github.com/BYVoid/microblog好不容易找到的基础版教程,但书中是基于express2的,而现在用的是express ...
- 《node.js开发指南》partial is not defined的解决方案
由于ejs的升级,<node.js开发指南>中使用的 partial 函数已经摒弃,使用foreach,include代替 原来的代码是: <%- partial('listitem ...
- 《Node.js开发指南》知识整理
Node.js简介 Node是一个可以让JavaScript运行在服务器端的平台,抛弃了传统平台依靠多线程来实现高并发的设计思路,而采用单线程.异步式I/O.事件驱动式的程序设计模型. 安装和配置No ...
- NODE.JS开发指南学习笔记
1.Node.js是什么 Node.js是一个让JS运行在服务器端的开发平台,它可以作为服务器向用户提供服务.Node.js中的javascript只是Core javascript,或者说是ECMA ...
- Node.js 开发指南笔记
第一章:node简介 介绍了node是什么:node.js是一个让javascript运行在服务器端的开发平台, node能做些什么:[书上的] 具有复杂逻辑的网站 基于社交网络的大规模Web应用 W ...
- Node.js 开发指南
1.Node.js 简介 Node.js 其实就是借助谷歌的 V8 引擎,将桌面端的 js 带到了服务器端,它的出现我将其归结为两点: V8 引擎的出色: js 异步 io 与事件驱动给服务器带来极高 ...
- node.js开发指南读书笔记(1)
3.1 开始使用Node.js编程 3.1.1 Hello World 将以下源代码保存到helloworld.js文件中 console.log('Hello World!'); console.l ...
- 《node.js开发指南》读书笔记(一)
在开发时如果修改了js内容,不能通过刷新浏览器直接看到效果,必须通过重启nodejs程序才能看到,这样显然不利于开发调试,supervisor可以实现这个功能,监视对代码的改动,并自动重启nodejs ...
- Node.js 开发指南-读书笔记
1. Node.js 使用了单 线程.非阻塞的事件编程模式 Node.js 最大的特点就是采用异步式 I/O 与事件驱动的架构设计.对于高并发的解决方 案,传统的架构是多线程模型,也就是为每个业务逻辑 ...
随机推荐
- Redis 使用消息隊列
關鍵函數 ListRightPush 生產消息 ListRightPop 消費消息 這是從右面增或取 左邊亦然
- 【CSS】271- RGB、HSL、Hex网页色彩,看完这篇全懂了
作者:CSS可乐 http://csscoke.com/2015/01/01/rgb-hsl-hex/ 网页使用到的色彩标示方法中,从古早时期大家都在用的16进位码(#000000).RGB色值标示. ...
- redis(3)--redis原理分析
过期时间设置 在Redis中提供了Expire命令设置一个键的过期时间,到期以后Redis会自动删除它.这个在我们实际使用过程中用得非常多.EXPIRE命令的使用方法为EXPIRE key secon ...
- 对 HTML 语义化的理解
简述一下你对 HTML 语义化的理解? 用正确的标签做正确的事情. html 语义化让页面的内容结构化,结构更清晰,便于对浏览器.搜索引擎解析; 即使在没有样式 CSS 情况下也以一种文档格式显示,并 ...
- webpack 环境搭建
Webpack环境搭建 一.安装node 1.node官网下载node并安装----node里面内置了npm所以用在安装npm了 2.命令行输入node -v查看node是否安装成功 二.全局安装we ...
- 8月份21道最新Java面试题剖析(数据库+JVM+微服务+高并发)
前言 纵观几年来的Java面试题,你会发现每家都差不多.你仔细观察就会发现,HashMap的出现几率未免也太高了吧!连考察的知识点都一样,什么hash碰撞啊,并发问题啊!再比如JVM,无外乎考内存结构 ...
- dart入门指南
近来,flutter的热度在上升.flutter应用的主要开发语言是dart, 因此,欲练flutter, 必先了解dart. dart是由google开发的编程语言,可用于开发移动应用,桌面应用,h ...
- 《Java知识应用》Java读写DBF文件
1. 准备: Jar包下载:链接: https://pan.baidu.com/s/1Ikxx-vkw5vSDf9SBUQHBCw 提取码: 7h58 复制这段内容后打开百度网盘手机App,操作更方便 ...
- jquery查出元素名称
<div onclick='$(this).prop("tagName")'></div> 最后的结果 DIV
- jQuery模仿ToDoList实现简单的待办事项列表
功能:在文本框中输入待办事项按下回车后,事项会出现在未完成列表中:点击未完成事项前边的复选框后,该事项会出现在已完成列表中,反之亦然:点击删除按钮会删除该事项:双击事项可以修改事项的内容.待办事项的数 ...