听过JS,听过Node,也听过Node.js,还听过npm,然而并不是很清楚的知道都代表什么,这两天调接口,然后前端同学很忙,就自己把前端代码拿过来跑了,也趁机了解一下这几个概念,下边做个小的总结吧。

Node和Node.js

JS就不用说了,一种解释型语言,前端用的较多,目前也出现在服务器端。

其实Node和Node.js是一个东西,那什么是Node呢?再从JS说起,JS是一种解释型语言,需要一个解析器才可以运行,一般情况下,浏览器就充当了这个解析器的作用,那么对于需要独立运行的JS,Node.js则是其解析器。Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。

一直在写Python,实际上Python也是需要运行环境的,所以我们运行Python程序之前都要安装一个Python的环境,比方说Python 2.7.11或者Python 3.5.3。这里Node也是一样的。

npm

npm是JS的包管理工具,类似于pip之于Python,实现的功能也是一样的。

nvm

Node的版本管理工具

环境的安装和简单使用

安装nvm(version number可以自定义)

➜ Workspace sudo curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash

Password:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7731 100 7731 0 0 2253 0 0:00:03 0:00:03 --:--:-- 2253
=> Downloading nvm from git to '/Users/wang/.nvm'
=> Cloning into '/Users/wang/.nvm'...
remote: Counting objects: 5106, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 5106 (delta 2), reused 0 (delta 0), pack-reused 5099
Receiving objects: 100% (5106/5106), 1.43 MiB | 122.00 KiB/s, done.
Resolving deltas: 100% (3071/3071), done.
Checking connectivity... done.
* (HEAD detached at v0.29.0)
master => Appending source string to /Users/wang/.zshrc
=> Close and reopen your terminal to start using nvm
➜ Workspace node
zsh: command not found: node
➜ Workspace ls
Github khb
➜ Workspace source ~/.nvm/nvm.sh
➜ Workspace node
zsh: command not found: node
➜ Workspace nvm install node Downloading https://nodejs.org/dist/v6.3.1/node-v6.3.1-darwin-x64.tar.gz...
######################################################################## 100.0%
WARNING: checksums are currently disabled for node.js v4.0 and later
Now using node v6.3.1 (npm v3.10.3) ➜ Workspace nvm use node
Now using node v6.3.1 (npm v3.10.3)
➜ Workspace nvm -v Node Version Manager Note: <version> refers to any version-like string nvm understands. This includes:
- full or partial version numbers, starting with an optional "v" (0.10, v0.1.2, v1)
- default (built-in) aliases: node, stable, unstable, iojs, s

  

npm的使用常用的有:
npm install xxx
npm search xxx

node升级到最新版本怎么做

➜ ~ sudo npm install n -g
/usr/local/bin/n -> /usr/local/lib/node_modules/n/bin/n
/usr/local/lib
└── n@2.1.8 ➜ ~ sudo n stable install : node-v8.0.0
mkdir : /usr/local/n/versions/node/8.0.0
fetch : https://nodejs.org/dist/v8.0.0/node-v8.0.0-linux-x64.tar.gz
######################################################################## 100.0%
installed : v8.0.0

  

PS:

再次吐槽一下如果用Markdown写出来再放到cnblogs有点蛋疼,可能需要换个博客了 = =。

JS, Node.js, npm简介的更多相关文章

  1. soket.io.js + angular.js + express.js(node.js)

    soket.io.js + angular.js + express.js(node.js) 今天搭建个soket.io.js + angular.js + express.js的环境, 采坑无数,特 ...

  2. win10 安装node.js node.js 安装成功但npm -v 报错问题解决

    错误症状官网下载node-v8 .node-v10 的msi 安装进行安装. npm -v 错误如下 0 info it worked if it ends with ok 1 verbose cli ...

  3. windows系统下安装 node.js (node.js安装及环境配置)

    node.js简介 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境. Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效. Node. ...

  4. 一统江湖的大前端(2)—— Mock.js + Node.js 如何与后端潇洒分手

    <一统江湖的大前端>系列是自己的前端学习笔记,旨在介绍javascript在非网页开发领域的应用案例和发现各类好玩的js库,不定期更新.如果你对前端的理解还是写写页面绑绑事件,那你真的是有 ...

  5. [Node.js] Node.js项目的持续集成

    原文地址:http://www.moye.me/2016/03/03/nodejs_ci_by_jenkins 引子 持续集成 (Continuous Integration,简称CI)是一种软件工程 ...

  6. [Node.js] Node.js中的流

    原文地址:http://www.moye.me/2015/03/29/streaming_in_node/ 什么是流? 说到流,就涉及到一个*nix的概念:管道——在*nix中,流在Shell中被实现 ...

  7. [Node.js] Node.js Buffers

    >> node >>fs.readFile('finnish.txt', function(err,data){ console.log(data); }); // Outpu ...

  8. node.js(node.js+mongoose小案例)_实现简单的注册登录退出

    一.前言 通过node.js基本知识对node.js基本知识的一个简单应用 1.注册 2.登录 3.退出 二.基本内容 1.项目结构搭建如图所示 2.这个小案列中用到了art-template子模板以 ...

  9. [写出来才有价值系列:node.js]node.js 01-介绍及安装

    对于Node.js在百度百科上是这样解释的: Node.js是一个Javascript运行环境(runtime).实际上它是对Google V8引擎进行了封装.V8引 擎执行Javascript的速度 ...

随机推荐

  1. PhoneGap: Android 自定义组件

    Hello Core Demo Plugin Development(组件部署): http://docs.phonegap.com/en/2.0.0/guide_plugin-development ...

  2. bootstrap - typeahead自动补全插件

    $('#Sale').typeahead({ ajax: { url: '@Url.Action("../Contract/GetSale")', //timeout: 300, ...

  3. 基于Laravel+Swoole开发智能家居后端

    基于Laravel+Swoole开发智能家居后端 在上一篇<Laravel如何优雅的使用Swoole>中我已经大概谈到了Laravel结合Swoole的用法. 今天,我参与的智能家居项目基 ...

  4. 刷新SqlServer所有视图【存储过程】

    摘自:http://www.cnblogs.com/yashen/archive/2004/12/23/81000.html CREATE PROCEDURE RefreshAllView AS DE ...

  5. P值,“差异具有显著性”和“具有显著差异”

      P值是论文中最常用的一个统计学指标,可是其误用.解释错误的现象却很常见.因此,很有必要说明p值的意义.用法及常见错误.   P值指的是比较的两者的差别是由机遇所致的可能性大小.P值越小,越有理由认 ...

  6. javascript生成GUID的代码

    <script type="text/javascript"> var Guid = function(){}; Guid.prototype = { S4:funct ...

  7. [Bundling and Minification ] 二、绑定的作用

    本篇接上一篇[Bundling and Minification ] 一.如何绑定 Bundling的作用有二,一是合并文件减少资源请求的个数缩短资源请求的时间.二是自动更新到最新js或者css,当合 ...

  8. Swift基础--Swift中的异常处理

    Swift中的异常处理 OC中的异常处理:方法的参数要求传入一个error指针地址,方法执行完后,如果有错误,内部会给error赋值 Swift中的异常处理:有throws的方法,就要try起来,然后 ...

  9. IntelliJ_设置

    1.修改背景色.修改字体大小 http://blog.csdn.net/hpf911/article/details/16888797 2.显示行号 搜索Line Number 3.代码结构图 Vie ...

  10. Entity Framework Code First (一)Conventions

    Entity Framework 简言之就是一个ORM(Object-Relational Mapper)框架. Code First 使得你能够通过C#的类来描述一个模型,模型如何被发现/检测就是通 ...