学习nodejs第一天

买来新书<了不起的Node.js>, 初学之下心潮澎湃,忍不住手痒想写点东西.

Node.js概略介绍

  • 就前端来说nodejs具有划时代的意义,做前端的没用过nodejs都不好意思说自己是前端,做后端的没听过nodejs,或者说不出nodejs和java的优缺点,也不是一个合格的后端。
  • nodejs不是一个js框架,千万不要认为是类似jquery的框架,
  • nodejs是js运行时,运行环境,类比java中jvm。java的开端是什么,无疑是jvm,自从有了jvm,java才能吹牛说自己是“一次编写处处运行”,不管你是windows还是linux,只要安装了对应版本的jvm都可以运行.class文件。同样nodejs的作用和jvm的一样一样的,也是js的运行环境,不管你是什么操作系统,只要安装对应版本的nodejs,那你就可以用js来开发后台程序。
  • 这具有划时代的意义,意味着一直以来只能在浏览器上玩来玩去的js,可以做后端开发了,
  • 从有了nodejs后就催生出一大批用js做后台开发的前端人员,这部分人员就是偏前端的“全栈程序员”。
  • 记住,nodejs是和jvm同等地位的js运行环境,打开了前端人员走向后端的道路。

入门

安装nodejs

Linux下有三种方法可以安装nodejs,可自行百度,或者参考此处,如下所列

  • 从官网下载编译好的文件,直接解压即可,跟安装jdk一样,此种方法安装完后就会有node和npm了
  • 下载源码编译安装
  • apt-get

上面就是Linux安装Nodejs的方法介绍了,三种方法都能够安装Nodejs,使用源码安装是最简单的方法,而后面两种较为麻烦,不是很推荐。

Node REPL

要运行Node的REPL, 在终端输入Node即可,可以在REPL中快速的尝试一些JavaScript的原生用法,很方便, 是一个很不错的工具.

$ node
> console.log("Hello World");

执行文件

用你喜欢的编辑器,编辑一个js文件(例如,my-web-server.js,内容略,可参考后文),然后通过以下命令来执行

node my-web-server.js

自定义模块

步骤

  • 创建一个空文件夹
  • 创建文件package.json, 并编辑它
  • 运行
    npm index   # 注意此处的index为您的js文件名, 并且不需要再添加.js后缀了,
    

package.json简单介绍

{
    "name": "my-colors-project",
    "version": "0.0.1",
    "main": "./index",
    "dependencies": {
        "colors": "0.5.0"
    }
}
  • 只有Name和Version是必要字段,其它都是可选字段
  • 当别人使用require(‘my-colors-project’)时, 为了能够让Node知道该载入哪个文件,可以通过 main 属性来指定
  • 如果不想发布你的模块中, 可以在package.json中加入 “private”:”true” 来进行禁止
  • dependencies: 依赖

npm

npm install             # 安装此模块的Package.json中指明的依赖
npm install colors      # 安装colors模块到当前目录中
npm install -g express  # 安装express模块到全局中
npm publish             # 把本自定义模块发布到NPM的库中供所有人下载使用
npm help json           # 查看package.json文件中的所有属性
npm search realtime     # 搜索
npm view socket.io

一个例子(my-web-server.js)

var http = require('http')
var serv = http.createServer(function(req, res) {
    res.writeHead(200, {'content-Type': 'text/html'});
    res.end('<marquee>Smashing Node!</marquee>');
});
serv.listen(3000);

参考文献

文章目录
  1. 1. Node.js概略介绍
  2. 2. 入门
    1. 2.1. 安装nodejs
    2. 2.2. Node REPL
    3. 2.3. 执行文件
    4. 2.4. 自定义模块
      1. 2.4.1. 步骤
      2. 2.4.2. package.json简单介绍
    5. 2.5. npm
    6. 2.6. 一个例子(my-web-server.js)
  3. 3. 参考文献