node 版本号 node -v
node 回车 进入node模式 可以进行运算
node 模式中 可输入代码立即执行
node严格模式 node -- use-strict 1.js
导航到目录下 mkdir ~/文件夹名
code .打开vscode
使用
model.export=函数名
var 函数名=require(‘路径’) 相对路径
导出模块
1. function fn1(){} function fn2(){}
module.exports{
name1:fn1,
name2:fn2
}
2.function fn1(){} function fn2{}
export name1=fn1 export name2=fn2 不可以直接对exports 赋值 name1 name2 (exports={name1: ,name2})
全局对象 global
global.console
process 进程 当前node进程
process.platform 进程平台
process.version
process.arch 进程拱门
process.cwd() 返回当前工作目录
process.chdir()切换到当前工作目录
process.nextTick(function(){}) 等到下一次事件循环
node.js进程本身的事件就由process对象处理
响应exit 退出时处理事件
process.on('exit',function(){}
判断JS的执行环境
if(typeof (window)==='undefined'){
console.log('node.js')
}else{ console.log(browser) }
-------------------------
var fs=require('fs')
fs.readFile(file名,‘utf-8’,function (error,data){ //第一个参数代表错误信息 第二个参数代表结果
if(error){}else{ console.log(data)}
}) fs.readFile('file','utf-8',function(){}) 异步读取文件
文件为二进制对象 不传入文件编码 会返回一个buffer缓冲对象(包含零个或任意字节的数组)
-----------------
buffer与string对象的转换
data.toString('utf-8') buffer转成string对象
buffer.from('text','utf-8') 转成buffer对象
---------------------------
异步读取文件
fs.readFileSync('file','utf-8') 不接受回调函数 函数直接返回结果
用try catch 捕获错误
--------------------
写文件 writeFile 同步方法 writeFileSync
var fs=require('fs')
fs.writerFile('files',data,function(){})
传入的是string 按utf-8返回
传入的是buffer 按二进制 返回
所以只关心成功与否 因此只有一个参数
---------------------
stat 获取文件大小 创建时间 fs.stat() 返回一个stat 对象 告诉我们目录的详细信息
isFile() isDictionary() size birthtime创建时间 mtime修改时间
var fs=require('fs')
fs.createReadStream 创建阅读流
var fs=require('fs')
var rs=fs.createWriteStream('file','utf-8')
rs.on('data',function(){}) data可能会有多次 每次传递的chuck 是一部分数据
rs.on('errror',function(){})
rs.on('end',function(){})
要以流的形式 写入文件 要不停的write() 最后以end() 结束
fs.createWriteStream('file','utf-8')
--------------
pipe 流合并
var ws=rs.createWriteStream('file')
var tos=rs.createWriteStream('file')
ws.pipe(tos) 源文件的说有数据转移到目录文件中
-----------------------------
readable 数据读取文件后 end 事件触发后 将关闭数据流 不关闭的话 可以传入参数
readable.pipe( {数据流:false})
网友评论