nodejs入门 安装与使用详细步骤 小白必读

一、什么是NodeJS
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。
Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。
Node.js 的包管理器 npm,成为世界上最大的开放源代码的生态系统。
淘宝镜像网站:http://npm.taobao.org/
npm install -g cnpm --registry=https://registry.npm.taobao.org
二、NodeJS怎样
Node.js 可以解析JS代码(没有浏览器安全级别的限制)提供很多系统级别的API,如:
文件的读写
进程的管理
网络通信
......
三、为什么要学习NodeJs
列举一些基于Node的工具或者框架
Node-Webkit:基于node的webkit的内核
NodeOS:基于node的操作系统
Express:基于node的框架
Jade:模板
EJS:模板
Forever:负载均衡
PM2:负载均衡
Log.io:浏览器打印各种输出日志,报错等
Grunt、Gulp、Webpack:前端工程化工具
Mocha、Karma:前端测试工具
......
四、学习nodeJS的五个网站
node官网:https://nodejs.org/en/ -------下载node,官方API,更新日志,发布的动态
npm官网:https://www.npmjs.com/search?q= -------可以搜索你需要的模块,模块管理、组件安装
github:https://github.com/search?utf8=%E2%9C%93&q=nodejs ----源代码
国外技术博客:http://stackoverflow.com/questions -----使用nodejs遇到的问题
国内的技术博客:https://segmentfault.com/ -----遇到的问题
五、nodeJS的安装
Mac系统的安装
windows系统的安装
其他系统的安装
参照网址:http://www.runoob.com/nodejs/nodejs-install-setup.html

v6.9.5 LTS v7.5.0 Current
偶数位为稳定版本:v6.8.x v6.6.x v6.4.x
基数位为非稳定版本:v6.9.x v6.7.x v6.5.x
六、搭建第一个WEB服务器
查看端口被占用 8080
win+R打开命令行窗口,
netstat -ano|findstr "8080"

在任务管理器中消除掉即可

本地创建一个文件server.js,代码采用es6编写
const http = require("http");
const homename = "127.0.0.1";
const port = 3000;
const server = http.createServer((req,res)=>{
res.statusCode = 200;
res.setHeader("Content-Type","text/plain");
res.end("hello world");
});

server.listen(port,hostname,()=>{
console.log(server running at http://${hostname}:${port}/);
})
es5的编写方法
var http = require('http');
http.createServer(function (request, response) {

// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
// 内容类型: text/plain
response.writeHead(200, {'Content-Type': 'text/plain'});

// 发送响应数据 "Hello World"
response.end('Hello World\n');
}).listen(8888);

// 终端打印如下信息
console.log('Server running at http://127.0.0.1:8888/');
七、命令行中体验
输入node即可进入控制台---交互式解释器--Node.js REPL
表示一个电脑的环境,类似 Window 系统的终端或 Unix/Linux shell,我们可以在终端中输入命令,并接收系统的响应。
Node 自带了交互式解释器,可以执行以下任务:
读取 - 读取用户输入,解析输入了Javascript 数据结构并存储在内存中。
执行 - 执行输入的数据结构
打印 - 输出结果
循环 - 循环操作以上步骤直到用户两次按下 ctrl-c 按钮退出。
八、helloworld
创建一个文件hello.js,代码采用es5编写
//console.log("hello world");
启动一个服务器
"/favicon.ico"
打印两次helloworld

九、模块和包管理工具
commonJS规范
根据这个规范,每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。

依赖关系 定义 .js文件

命名空间 纠结的编程体验 暴露接口

代码组织 引用

modules/pakages/system/filestems/binary/console/encodings/sockets/unit test...

不同于jQuery,CommonJs是一套规范

规范与实现的互为促进
nodeJS、Webpack都基于CommonJS规范,区别于AMD/CMD---require.js/sea.js

使用npm install 来安装模块
使用镜像安装 cnpm install

案例展现

十、NPM使用
全局安装:相当于windows系统环境变量的配置
本地安装:不加后缀
安装:install
卸载:uninstall
安装模块:npm install n -g
升级node:n stable
安装Forever:cnpm install forever -g
本地安装underscore:cnpm install underscore
查看模块版本号:cnpm info underscore
选择版本安装:cnpm install underscore@1.0.3
查看安装了那些模块:cnpm list
如何管理模块package:cnpm init
dependencies:项目依赖,通过--save加进去
devDependencies:开发依赖,线上不需要---通过--dev加进去
删除node_modules文件夹,执行命令 cnpm install
只查看安装模块的中某一个模块的信息:cnpm list | grep gulp
查看版本标识:cnpm outdated
nrm模块--选择和切入源:cnpm install nrm -g
nrm list
nrm test----测试速度
nrm use npm

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,905评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,140评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,791评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,483评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,476评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,516评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,905评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,560评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,778评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,557评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,635评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,338评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,925评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,898评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,142评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,818评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,347评论 2 342

推荐阅读更多精彩内容