nodejs-Module
nodejs的打包程序
模块:实现特定功能的文件
1.通过require引入模块
2.模块中的功能(变量,函数),通过赋给exports对象的某个属性提供给调用者使用
|
1
2
|
function sum(){xxxxx}exports.sum = sum; |
在另一个文件夹中这样调用
|
1
2
|
var sum = require('tt');sum.sum(); |
exports实现了隔离作用域,外部只能访问exports提供出来的函数
exports 是 module exports的别名
包:包是一个文件夹,将模块封装起来,用于发布、更新、依赖管理和版本控制。
通过package.json描述包的信息,入口文件,依赖的外部包等。
通过npm install 安装包,通过require使用
node中的javascript
文件相关操作
fs对象
fs.readfile 一个异步读取的方法
|
1
2
3
4
5
|
require('fs')fs.readfile(filepath,function(err,data){ if(err){console.log(err)}; else{console.log(data).toString()};}); |
|
1
2
3
4
5
|
require('fs')fs.readfile(filepath,'utf-8',function(err,data){ if(err){console.log(err)}; else{console.log(data)};}); |
fs.readfileSync()同步读取方法,会阻塞下面代码的执行
|
1
|
var data = fs.readfileSync('tt.js','utf-8'); |
js
事件、观察者模式、事件原理、自定义事件
path
require('path')
path.sep --> console.log(path.sep) 打印分隔符,sep是seperator的缩写
path.extname(‘test.txt’) -->获取文件的扩展名,服务器编程经常用到
url对象
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
var http p = require('http');var url = require('url');var fs = require('fs');http.createServer(function(request,response){ var urlObj = url.parse(request.url); console.log(urlObj); var pathname = urlObj.pathname; var query = urlObje.query; fs.readFile(pathname.substr(1),'utf-8',function(err,data){ if(err){ response.writeHead(404); response.end('file not found'); }else{ reponse.end(data); } }); |
nodejs-Module的更多相关文章
- nodejs module/require
1. wrap up a module using module.exports, name the file to a.js var fun1=function(){ var stylus = re ...
- nodejs . module.exports
//utils.js let a = 100; console.log(module.exports); //能打印出结果为:{} console.log(exports); //能打印出结果为:{} ...
- ES6的export与Nodejs的module.exports
原文:https://www.cnblogs.com/lxg0/p/7774094.html module.exports与exports,export与export default之间的关系和区别 ...
- RESTful API Design With NodeJS & Restify
http://code.tutsplus.com/tutorials/restful-api-design-with-nodejs-restify--cms-22637 The RESTful API ...
- Nodejs的模块系统以及require的机制
一.简介 Nodejs 有一个简单的模块加载系统.在 Nodejs 中,文件和模块是一一对应的(每个文件被视为一个独立的模块),这个文件可能是 JavaScript 代码,JSON 或者编译过的C/C ...
- module、export、require、import的使用
module 每个文件就是一个模块.文件内定义的变量.函数等等都是在自己的作用域内,都是自身所私有的,对其它文件不可见. 每个文件内部都有一个module对象,它包含以下属性 id: 模块的识别符,通 ...
- exports与module.exports,export与export default 之间的关系和区别
首先我们要明白一个前提,CommonJS模块规范和ES6模块规范完全是两种不同的概念. CommonJS模块规范 Node应用由模块组成,采用CommonJS模块规范. 根据这个规范,每个文件就是一个 ...
- 【NodeJS】基础知识
nodejs基础 nodejs允许自己封装模块,使得编写程序可以模块化,便于维护整理.在一个js文件中写完封装的函数或对象后,可以使用exports或module.exports来将模块中的函数暴露给 ...
- module.exports与exports,export与export default之间的关系和区别
首先我们要明白一个前提,CommonJS模块规范和ES6模块规范完全是两种不同的概念. CommonJS模块规范 Node应用由模块组成,采用CommonJS模块规范. 根据这个规范,每个文件就是一个 ...
- module.exports 与 exports
module.exports 与 exports 注意:1 对于要导出的属性,可以简单直接挂到 exports 对象上2 对于类,为了直接使导出的内容作为类的构造器可以让调用者使用 new 操作符创建 ...
随机推荐
- DataGridView导出数据到Excel及单元格格式的改动
在软件开发过程中,时常会遇到把一些数据信息从DataGridView中导出到Excel表格中的情况.假设写的多了就会发现挺简单的,我们最好还是来写一写,留作备用,毕竟有时候Ctrl+C和Ctrl+V还 ...
- PHP统计所有字符在字符串中出现的次数
<?php //统计字符串中出现的字符,出现次数 echo '<pre>'; $str = 'aaabbccqqwweedfghhjffffffffggggggggg';//字符串示 ...
- SharePoint创建一个简单的Visio Web部件图
SharePoint创建一个简单的Visio Web部件图 Visio有很多强大的Mash-up混聚功能,使它能够轻松集成到SharePoint 2010中. 1. 打开Visio 2010,创建新的 ...
- perl的安装
http://www.activestate.com/activeperl/downloads 安装的时候,默认把perl放置到环境变量的PATH中 之后,需要重启电脑,确保环境变量生效 执行perl ...
- 二重积分的计算 —— 交换积分顺序(exchange the order of integration)
交换积分顺序的诀窍在数形结合: 1. 几句顺口溜 后积先定限,限内穿条线,先交下限写,后交上限见 先积 x,画横线(平行于 x 轴),右减左: 先积 y,画竖线(平行于 y 轴),上减下: 2. 简单 ...
- Mysql数据库性能
Mysql数据库设计规范 https://www.cnblogs.com/Luke-Me/p/8994432.html 我们在项目一开始的设计中,就要忙着考虑数据库的设计,表.字段.索引.sql等等, ...
- [JavaEE] IBM - Spring 系列: Spring 框架简介
Spring AOP 和 IOC 容器入门 在这由三部分组成的介绍 Spring 框架的系列文章的第一期中,将开始学习如何用 Spring 技术构建轻量级的.强壮的 J2EE 应用程序.develop ...
- php和nodejs
整个故事正如好莱坞大片的经典剧情走向:两位昔日好友如今分道扬镳,甚至被迫陷入了你死我活的斗争当中.刚开始的分歧并不严重,无非是一位老友对于另一位伙伴长久以来占据.但又绝口不提的业务领域产生了点兴趣.而 ...
- Hdu-6230 2017CCPC-哈尔滨站 A.Palindrome Manacher 主席树
题面 题意:给你一个字符串,问你满足s[i]=s[2n-i]=s[2n+i-2]的子串(这子串长度为3n-2)有多少个,原字符串长度<=5e5 题解:对于这种子串,其实要满足2个回文,跑过一次M ...
- anaconda 使用 及 tensorflow-gpu 安装
Anaconda简易使用 创建新环境 conda create -n rcnn python=3.6 删除环境 conda remove -n rcnn --all 进入环境 conda activa ...