初识Node.js(nvm管理工具)

216 阅读1分钟

Node.js:java script的运行环境(平台)

nvm 是 Mac 下的 node 管理工具,有点类似管理 Ruby 的 rvm,如果需要管理 Windows 下的 node,官方推荐使用 nvmw 或 nvm-windows。不过,nvm-windows 并不是 nvm 的简单移植,他们也没有任何关系。

安装nvm

Mac下安装命令

git clone https://github.com/creationix/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
  • 然后输入安装脚本(.bash_profile文件)
touch ~/.bash_profile
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" ||
printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
  • 淘宝镜像
vim ~/.bash_profile
// 添加下两行代码
export NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node
export NVM_IOJS_ORG_MIRROR=http://npm.taobao.org/mirrors/iojs
// 重启配置文件
source ~/.bashrc

Win安装

  • windows系统安装简单,下载傻瓜式安装即可
  • 下载nvm-setup.zip下载地址
  • 淘宝镜像:setting.txt文件添加下两行代码
node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

OS X/Linux安装

  • OS X 的话,可以用 X-Code 的命令行工具
xcode-select --install
  • 如果是 Debian 发行版
sudo apt-get install build-essential
  • 安装命令
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
  • 或者
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

nvm常用命令:

nvm ls-remote:查看node存在的所有版本
nvm install node版本号:安装对应的node版本
nvm use node版本号:使用指定的node版本
nvm uninstall node:删除已安装的指定版本
nvm ls:列出所有安装的版本
nvm alias default node版本号:改node默认版本

npm淘宝镜像

  • 设置
npm config set registry https://registry.npm.taobao.org
  • 查看
npm config get registry

commonjs规范

  • 导出:module.exports=""
  • 引入:require(" ")
  • 详情见下面示例

JS工具库:loadsh

//初始化
npm init -y
npm i loadsh --save
//或者cnpm......或者淘宝镜像

详情见下面示例

全局对象:global(相当于window)

  • 示例:
//index.js
let calc=require("./calculate")
let _=require("loadsh")

var name="node"
function helloName(){
    console.log("hello "+name+"!")
}
helloName()
// commonjs规范
calc.add(1,2)
calc.del(10,5)
// loadsh
let arr=_.compact([0, 1, false, 2, '', 3])
console.log(arr)
// global
console.log(name+","+global.name)
//calculate.js
function add(a,b){
    console.log(a+b)
}

function del(a,b){
    console.log(a-b)
}

global.name="steven"

module.exports={
    add,del
}