阿飞老师nodejs语录1——源生nondejs重点整理

作者:admin     发表时间:8/20/2019

* 安装

    - node -v / npm -v

    - npm install cnpm -g

* node包管理器npm

    - 初始化 npm init / npm init -y

    - 安装包 npm install/i 包名@ver 参数

        - 版本 @ver指定安装版本号,不指定即默认安装罪行版本

        - 参数 -g 全局 -S(--save) 生产环境 -D(--dev) 开发环境

        - 包名和参数位置可以互换 npm i express -S / npm i -S express

        - 安装多个包 npm i express require -S

        - 上线 不复制node_modules,package.json里有安装依赖包信息,npm i即可

    - 删除包 npm uninstall 包名 参数

        - 参数要与安装时保持一致

    - 升级包 npm update 包名

        - 不会跨大版本升级

    - 依赖包列表 npm list

    - 登录npm npm login 输入密码的时候是看不到的

    - npm publish

    - npm unpublish

* 导入模块 require(path)

    - 引入源生模块和npm安装的模块不需要带路径,都在node_modules里

    - 引入自定义模块文件需要带路径,即使是同目录下也要./file

* 导出模块 module.exports 默认值{}

    - exports 只是引用module.exports,所以只能添加属性,不要赋值

* 模块缓存

    - 同模块只能引入一次,多次引入没有意义,后面引用的还是前面的结果


* path模块

    - path.join 拼接路径

    - path.resolve 处理成绝对路径

    - path.relative(path1,path2) path1到path2的相对路径

    - path.parse 格式化信息


* url模块

    - const {URL} = require("url")  let u = new URL("http://...")

        - u.href u.origin u.protocol u.host u.hostname u.port

        - u.pathname u.search(?wd=...) u.searchParams(Map格式)


* querystring模块

    - 查询字符串 get请求?后面的字符串

    - querystring.parse 字符串解析成对象

    - querystring.stringify 对象序列化为查询字符串


* fs模块 fs.API(path[,data][,options],(err[,data][,stat])={})

    - fs各类型API都有同步和异步两种API,异步API都有回调,同步都没有回调

    - 异步API回调里有data等数据的,同步API返回值就是data等数据

    - 异步API回调里只有err的同步API返回值就是undefined

    - fs.readFile(path[,options],(err,data)=>{})  要写"utf-8"

    - fs.readFileSync(path[,options]) 返回值即为异步里的data

    - fs.writeFile(path,data[,options],err=>{})  默认"utf-8" {flag:"a+"}文末追加

    - fs.unlink(file,err => {}) 删除已存在文件

    - fs.mkdir(path[,options],err=>{}) {recursive: true}时无论上级目录是否存在

    - fs.readdir(path,(err,data)=>{}) 返回由子文件和子文件夹组成的数组

    - fs.rmdir(path,err=>{}) 删除空文件夹

    - fs.rename(oldPath,newPath,err=>{}) 移动和重命名文件,文件名不变即只移动

    - fs.stat(path,(err,stats)=>{})  stats.isDirectory() stats.isFile()

    

* global 全局变量

    - __dirname  __filename console(是nodejs自定义的) global(顶层对象)

    - module exports require()

    - setImmediate setInterval setTimeout

    - clearImmediate clearInterval clearTimout

评论