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的更多相关文章

  1. nodejs module/require

    1. wrap up a module using module.exports, name the file to a.js var fun1=function(){ var stylus = re ...

  2. nodejs . module.exports

    //utils.js let a = 100; console.log(module.exports); //能打印出结果为:{} console.log(exports); //能打印出结果为:{} ...

  3. ES6的export与Nodejs的module.exports

    原文:https://www.cnblogs.com/lxg0/p/7774094.html module.exports与exports,export与export default之间的关系和区别 ...

  4. RESTful API Design With NodeJS & Restify

    http://code.tutsplus.com/tutorials/restful-api-design-with-nodejs-restify--cms-22637 The RESTful API ...

  5. Nodejs的模块系统以及require的机制

    一.简介 Nodejs 有一个简单的模块加载系统.在 Nodejs 中,文件和模块是一一对应的(每个文件被视为一个独立的模块),这个文件可能是 JavaScript 代码,JSON 或者编译过的C/C ...

  6. module、export、require、import的使用

    module 每个文件就是一个模块.文件内定义的变量.函数等等都是在自己的作用域内,都是自身所私有的,对其它文件不可见. 每个文件内部都有一个module对象,它包含以下属性 id: 模块的识别符,通 ...

  7. exports与module.exports,export与export default 之间的关系和区别

    首先我们要明白一个前提,CommonJS模块规范和ES6模块规范完全是两种不同的概念. CommonJS模块规范 Node应用由模块组成,采用CommonJS模块规范. 根据这个规范,每个文件就是一个 ...

  8. 【NodeJS】基础知识

    nodejs基础 nodejs允许自己封装模块,使得编写程序可以模块化,便于维护整理.在一个js文件中写完封装的函数或对象后,可以使用exports或module.exports来将模块中的函数暴露给 ...

  9. module.exports与exports,export与export default之间的关系和区别

    首先我们要明白一个前提,CommonJS模块规范和ES6模块规范完全是两种不同的概念. CommonJS模块规范 Node应用由模块组成,采用CommonJS模块规范. 根据这个规范,每个文件就是一个 ...

  10. module.exports 与 exports

    module.exports 与 exports 注意:1 对于要导出的属性,可以简单直接挂到 exports 对象上2 对于类,为了直接使导出的内容作为类的构造器可以让调用者使用 new 操作符创建 ...

随机推荐

  1. 项目产品化——Excel数据库模板化导入(java)

    Excel导入可能是代码开发中比較常见的功能,一个项目假设有多个地方须要excel导入数据库.那么开发的工作量也将比較大,项目产品化过程中,将这么一个类似的功能进行封装合并也是必要的.封装好的代码仅仅 ...

  2. 【BZOJ】2140 稳定婚姻

    [解析]Hash,离散化.Tarjan [分析] 对于每一个名字.首先离散化成编号. 用hash或者其它,反正不要最主要的即可了.否则O(N^2L)会爆掉. 然后请參考:http://www.cnbl ...

  3. luogu3197 [HNOI2008] 越狱

    题目大意 已知序列$P$满足$|P|=N$,(以下所有$i,i\in[1,N]$)$\forall i, P_i\in [1,M]$.求$|\{P|\exists i, P_i =P_{i+1}\}| ...

  4. spring属性的三种注入方法

    (1)使用set方法: public class Book {  private String bookname;public void setBookname(String bookname) {  ...

  5. Swift - 可编辑表格样例(可直接编辑单元格中内容、移动删除单元格)

    (本文代码已升级至Swift3)   本文演示如何制作一个可以编辑单元格内容的表格(UITableView). 1,效果图 (1)默认状态下,表格不可编辑,当点击单元格的时候会弹出提示框显示选中的内容 ...

  6. jdk5可变参数列表

    今天碰到了 public static String getAutoRelateRelationship(final JSONObject modifyJson, String... inUsedCo ...

  7. SwiftUI 官方教程(六)

    6. 在列表和详情之间设置导航 虽然列表已经能显示了,但是我们还不能通过点击单个地标来查看地标详情页面.SwiftUI教程 把 list 嵌入一个 NavigationView 中,并把每个 row  ...

  8. webkitdirectory 实现文件夹上传

    文件夹上传这个功能在web端可能有需求,这里就简单介绍下用法. 目前只有谷歌浏览器还有Microsoft Edge支持按照文件夹进行上传,具体可以看下百度云盘的网页版的上传按钮,在火狐下就支持按照文件 ...

  9. spring-boot结合mybatis-spring的一个例子

    首先spring-boot是用于简化配置的,具有可拔式组件的运用特点. 然后一下是spring-boot结合mybatis-spring的一个例子. 是一个maven项目 demo下载:http:// ...

  10. Memcached 与 Redis 的关键性能指标比较

    性能对比: Redis 只使用单核,而 Memcached 可以使用多核,所以平均每一个核上 Redis在存储小数据时比 Memcached 性 能更高. 而在 100k 以上的数据中,Memcach ...