Node.js 学习笔记(一)--------- Node.js的认识和Linux部署
Node.js
一、Node.js 简介
简单的说 Node.js 就是运行在服务端的可以解析并运行 JavaScript 脚本的软件。
Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。
Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。
二、Node.js 的特点
1. 单线程 :不同于 Apache 服务器的多线程处理请求特点,这也决定了它可以已极低的内存消耗进行单线程处理更多的请求。
2. 异步非阻塞 I / O ;
3. 事件驱动;
4. npm 包管理工具;
5. 稳定性较差。
三、Linux系统中的安装使用
1. 下载
官方网址 : https://nodejs.org/en/
中文网址 : http://nodejs.cn/
2. 解压
tar -xf node-v6.11.0-linux-x64.tar.xz
3. 移动
mv node-v6.11.0-linux-x64 /usr/local/node
4. 配置
环境变量
vim ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/node/bin
5. 刷新
source ~/.bash_profile
6. 查看版本信息
node -v
npm -v
四、基本使用
我们在服务器端编写 js 脚本,使用 node.js 输出 Hello World
// 1. 引入 node 内置的 http 模块儿
var http = require('http'); // 2. 创建服务
var server = http.createServer(function(req, res)
{
// 逻辑代码 并给客户端返回结果 // 快速结束响应
res.end('hello world');
}); // 3. 监听端口
server.listen(8080);
五、npm 包管理工具的使用方法
npm
简介
可以理解为一个包依赖管理工具,好比360软件官家。
https://www.npmjs.com/
使用
1.初始化 npm
npm init --yes
2.查找软件
npm search formidable
3.安装软件
(1)记录安装信息(生产环境使用)
这样安装会生成 package.json 文件,包含项目中安装的node_models
便于转移项目。
npm install formidable --save
package.json 文件内容示例:
{
"dependencies": {
"ejs": "^2.5.6",
"express": "^4.15.3"
}
}
(2)不记录安装信息
npm install formidable
4.移除软件
npm uninstall fomidable
5.查看已经安装的包列表
npm list
6.配置中文镜像
npm install -g cnpm --registry=https://registry.npm.taobao.org
配置后,安装模块,删除模块使用cnpm 调用命令
7.模块的使用
模块的加载机制
路径
绝对路径
相对路径
模块的使用
npm init --yes
npm install formidable
删除 node_modules
npm uninstall formidable
Node.js 学习笔记(一)--------- Node.js的认识和Linux部署的更多相关文章
- WebGL three.js学习笔记 创建three.js代码的基本框架
WebGL学习----Three.js学习笔记(1) webgl介绍 WebGL是一种3D绘图协议,它把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的 ...
- Node.js学习笔记(1) - Node.js简介
近期在看一些Node.js的知识,看完后觉得,一些前面的东西忘记了,于是整理一下,方便自己查阅,也希望对学习Node.js的朋友有些帮助: 当然以下只是我个人的观点和理解,不喜勿喷,也望大神指教. 一 ...
- Node.js学习笔记(2) - Node.js安装及入门hello world
今天来简单的记录一下Node.js的安装配置以及简单的入门 一.Node.js的安装 1.windows下的安装 windows下的安装很简单,只需要去官网http://nodejs.org中,找到w ...
- Node.js学习笔记(八) --- Node.js的路由模块封装
1 .模块化的方式封装 整理中… 2 .封装仿照 express 的路由整理中…
- Node.js学习笔记(七) --- Node.js的静态文件托管、路 由、EJS 模板引擎、GET 、POST
1 . Nodejs 静态文件托管静态 web 服务器封装 2 . 路由 官方解释: 路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET.POST 等)组成的, ...
- JS学习笔记(模态框JS传参)
博主最近基于django框架的平台第一版差不多完成了 今天整理下开发过程中遇到的前端知识 基于前端bootstrap框架模态框传参问题 上前端html代码: <div class="m ...
- 2019-4-29 js学习笔记
js学习笔记一:js数据类型 1:基本数据类型 number类型(整数,小数) String类型 boolean类型 NaN类型其实是一个nu ...
- 基于jquery的插件turn.js学习笔记
基于jquery的插件turn.js学习笔记 简介 turn.js是一个可以实现3d书籍展示效果的jq插件,使用html5和css3来执行效果.可以很好的适应于ios和安卓等触摸设备. How it ...
- 一点感悟:《Node.js学习笔记》star数突破1000+
写作背景 笔者前年开始撰写的<Node.js学习笔记> github star 数突破了1000,算是个里程碑吧. 从第一次提交(2016.11.03)到现在,1年半过去了.突然有些感慨, ...
- Node.js学习笔记(3):NPM简明教程
Node.js学习笔记(3):NPM简明教程 NPM常用操作 更新NPM版本 npm install npm -g -g,表示全局安装.我们可以指定更新版本,只需要在后面填上@版本号即可,也可以输入@ ...
随机推荐
- PCA简单实现
''' 总结一下PCA的算法步骤: 设有m条n维数据. 1)将原始数据按列组成n行m列矩阵X 2)将X的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值 3)求出协方差矩阵C=1/m*(XX ...
- Fleury算法
关于为什么不选桥 因为选桥之后会变成两个联通分支,这时由于可能产生的新联通分支不是孤立顶点,他俩都不联通了,那么也就绝对不可能“一笔画”走下来了 关于为什么可以选除桥之外的任意一条边走 本质原因是因为 ...
- UVA_11020 Efficient Solutions 【平衡二叉搜索树set用法】
一.题面 UVA11020 二.分析 最近脑子有点不好使吧,这题还想了很久. 对于给定的两个值要满足题面中的条件,那么我们可以把这两个值转化到平面中的坐标去理解. 首先,需要考虑的是维护的所有点其实是 ...
- 我把双系统的win10抹除了现在开机只按option还是会出现双系统选择,怎么把那个win10给取消了或删除掉
找到解决方法了,按步骤来吧,准备:[打开Finder如果你在侧边设备一栏里看不到 Macintosh HD 就打开Finder设置>边栏>勾选硬盘,如果能看到请无视这一行]1. 打开终端执 ...
- (java/javascript) list 交集 并集 差集 去重复并集
java list 交集 并集 差集 去重复并集 package com; import java.util.ArrayList; import java.util.Iterator; import ...
- linux MD5 SHA1 等 文件校验方法
为解决官方发布的软件包被别人更改或者软件在传输过程中出现传输错误等问题,软件官方在提供软件包的同时,还提供一个保存MD5校验码的文件. Linux/unix中可以使用 md5sum 文件名 sha1s ...
- MySQL 重命名数据库
首先创建目标库 create database trgdb; 获取所有源库的表名 use information_schema; select table_name from TABLES where ...
- Hibernate 查询语句基本用法
转发: http://459104018-qq-com.iteye.com/blog/720538
- String类的substring方法
下列程序的输出是什么? class A { public static void main(String[] a) { String v = “base”; v.concat(“ba ...
- GBK 编码
GBK编码范围:8140-FEFE,汉字编码范围见第二节:码位分配及顺序. GBK编码,是对GB2312编码的扩展,因此完全兼容GB2312-80标准.GBK编码依然采用双字节编码方案,其编码范围:8 ...