node
- thinkjs
ThinkJS 是一款面向未来开发的 Node.js 框架,整合了大量的项目最佳实践,让企业级开发变得更简单、高效。从 3.0 开始,框架底层基于 Koa 2.x 实现,兼容 Koa 的所有功能。
- express
主要是帮助脚本找到node的脚本解释器。
流处理
echo $NODE_ENV
export NODE_ENV=integration
可以使用nvm切换node版本
# 安装指定node版本
nvm install v14.15.0
# 运行指定node版本
nvm use v14.15.0
# 切换到最新的node版本
nvm use node
# 远程服务器上所有的可用版本
nvm ls-remote
# 给不同的版本号设置别名
nvm alias node_cms 14.15.0
# 使用该别名
nvm use node_cms
# 查看已安装node列表
nvm ls
# 安装n
sudo npm i -g n
#安装node指定版本
sudo n 12.13.0
# 升级npm
npm install -g n
# 升级到稳定版
sudo n stable
# 升级到最新版
sudo n lastest
# 切换使用node版本
sudo n 12.13.0
# 删除某个node版本
sudo n rm 12.13.0
# 用指定版本执行脚本
sudo n use 12.13.0 some.js
process.argv
属性返回一个数组,其中包含启动Node.js进程时传递的命令行参数。
第一个元素是process.execPath, 如果需要访问argv[0]的原始值,可以使用process.argv0
第二个元素将是要执行的JavaScript文件的路径, 其余元素将是任何其他命令行参数。
- fs.writeFileSync();
var render = require('json-templater/string');
render('{{xfoo}} {{say.what}}', { xfoo: 'yep', say: { what: 'yep' } });
// yep yep
交互式获取命令行参数
单线程下的 Node.js:
一个进程
一个线程
一个事件循环
一个 JS 引擎实例
一个 Node.js 实例
多线程 Workers 下 Node.js 拥有:
一个进程
多个线程
每个线程都拥有独立的事件循环
每个线程都拥有一个 JS 引擎实例
每个线程都拥有一个 Node.js 实例
安全http-server
babel-node : https://juejin.cn/post/6844903768924897288