ronghaoZHI/ronghaoZHI.github.io

nodejs--note1

Opened this issue · 1 comments

//nodejs

#//线程
//线程是来运行应用程序中代码;一个线程在同一时间只能做一件事;多线程,调度起来很麻烦;node是单线程运行,用异步代替多线程。
#//同步、异步
// 异步不会阻塞后面的代码,同步会阻塞,一个线程 先执行同步后执行异步
#//异常处理
// try{} cath{} 同步执行
//if(err) throw {err}
//

###// 核心模块(原生 node 自带)

fs
http
os
path
querystring
url

###// require文件加载模块
加载名 默认顺序 .js .node. .json
从同级目录node_modules/ 下 向上找 直到根目录

##// 包 /node_modules/ 使用:require(“包name:”)
一般指一个文件夹:
->package.json 包的描述文件,说明文件 ( npm init
->index.js 入口文件
->bin 存放二进制文件的目录
->lib 存放js 文件的目录
->doc 存放文档文件
->test 存放测试单元文件

#// 3m — npm nvm nrm

#//fs
//var fs = require("fs");
//fs.open()
//fs.access()
//fs.writeFile()
//fs.readFile()
//fs.stat() //stats.isDirrectory() //
//fs.mkdir()
//fs.readdir()
// fs.createReadStream() //fs.createWriteStream() (大文件)
// fs.createWriteStream().pipe( fs.createReadStream());

#//path //__dirname
// path.join(__dirname, ' ./a.text');
// path.basename('c:\a\a.html');
//path.basename('c:\a\a.html','.html');////path.extname('/a/a.js.css.html');
//path.dirname('/a/a.js');

#//http // localhost:3000不走网卡 127.0.0.1:3000走网卡 //192.128.000.000 请求路由或者交换机
//var http = require("http");
//var server = http.createServer( function (request, response,err) {if(err){}else{} }) .listen(8080);
//server.on('request',function(req,res){ res.writeHead(200 ,{ }); res.write(‘’); }); server.listen(3000);
// request.httpversion //request.method //request.url
//var querystring = require('querystring'); querystring.parse(data); //把post的数据转成对象格式

//DNS CDN ip
//跨域

#//Node调试
// node debug XXX.js //n(下一步) 、s(步入)、o(退出)
// npm install -g node-inspector //node-debug XXX.js
//webStorm
// VSCode

#//ES6 //阮一峰

//cookie //seesion
//HTTP 报文格式
//postman使用

#// 网站优化 -- **
// 能压缩的压缩 能合并的合并
// js 中少用遍历对象 、for循环
// js 中能少用运算尽量少用 (枚举)
// cdn
// 精灵图 //响应式图片