Node.js学习笔记(2) - Node.js安装及入门hello world
今天来简单的记录一下Node.js的安装配置以及简单的入门
一、Node.js的安装
1.windows下的安装
windows下的安装很简单,只需要去官网http://nodejs.org中,找到window下的安装包,然后直接下一步即可
此种方法完成后,默认安装npm管理器,目录结构如图:

2.Linux下的安装
关于Linux下的安装,具体本人也没有试过,现只粗略的记录一下
Linux发行版 命令
Debian/Ubuntu apt-get install node.js
Fedora/RHEL/CentOS/Scientific Linux yum install node.js
openSUSE zypper install node.js
Arch Linux pacman -S node.js
当然官网中提供了 Mac OS X 上专用的安装包,下载即可。
3.编译安装node.js
官网中提供了源代码包,为此用户可以根据自己的习惯,采用编译安装的方式,但是注意
在POSIX系统中,需要几个工具:
①c++编译器gcc或clang/LLVM
②Python版本2.5以上,不支持Python3.0
③libssl-dev提供SSL/TSL加密支持
在windows下的编译,需要安装Microsoft Visual Studio进行编译
(当然编译安装的方法,本人也没有试过)
二、Node.js简单编程
安装完node.js之后,就可以运行Node.js程序了
在命令行窗口输入命令:node,进入了node运行环境,输入console.log("hello world"),效果如下

undefined是该函数的返回值
这种方式是node的REPL模式(read-eval-print loop,输入-求值-输出循环),是一个javascript的交互式shell
也可以在hello.js中,写入代码console.log("hello world"),然后在该目录下,运行命令
node hello.js,效果如下

当然文件的扩展名,不一定是js,可以是系统可识别的任意扩展名,保留扩展名js,只是习惯而已
当然也可以这样 node -e "console.log('hello world')"

Node.js与传统的 浏览器 -- HTTP服务器 -- 程序解释器 不同,直接采用 Node.js -- 浏览器 的组织方式
看下面一个例子
app.js内容如下:
var http = require('http');
http.createServer(function(req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.write('<h1>Node.js</h1>');
res.end('<p>Hello World</p>');
}).listen(3000);
console.log("HTTP server is listening at port 3000.");
首先运行node app.js,
然后在浏览器中,访问地址http://127.0.0.1:3000
即可看到效果

关于Node.js的程序,如果修改了任何一个文件,都必须终止Node.js,在重新运行方可生效;
这时,可以使用 supervisor来解决此问题,他会监视代码的改动,并自动重启Node.js;
安装supervisor
npm install -g supervisor
用supervisor启动Node.js
supervisor app.js
关于npm的几点说明:
npm [install/i] [packagename]
npm的安装有两种模式,本地模式和全局模式,默认是本地模式
npm [install/i] -g [packagename] 全局模式
Node.js学习笔记(2) - Node.js安装及入门hello world的更多相关文章
- 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学习笔记(七) --- Node.js的静态文件托管、路 由、EJS 模板引擎、GET 、POST
1 . Nodejs 静态文件托管静态 web 服务器封装 2 . 路由 官方解释: 路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET.POST 等)组成的, ...
- Node.js学习笔记(八) --- Node.js的路由模块封装
1 .模块化的方式封装 整理中… 2 .封装仿照 express 的路由整理中…
- 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学习笔记(3):NPM简明教程
Node.js学习笔记(3):NPM简明教程 NPM常用操作 更新NPM版本 npm install npm -g -g,表示全局安装.我们可以指定更新版本,只需要在后面填上@版本号即可,也可以输入@ ...
- 系列文章--Node.js学习笔记系列
Node.js学习笔记系列总索引 Nodejs学习笔记(一)--- 简介及安装Node.js开发环境 Nodejs学习笔记(二)--- 事件模块 Nodejs学习笔记(三)--- 模块 Nodejs学 ...
随机推荐
- 一、springboot入门
构建spring boot工程一般采用两种方式 gradle .maven maven方式 pom.xml spring-boot-starter:核心模块,包括自动配置支持.日志和YAML spri ...
- Python 深拷贝、浅拷贝
Python中,对象的赋值,拷贝(深/浅拷贝)之间是有差异的,如果使用的时候不注意,就可能产生意外的结果. 首先,对赋值操作我们要有以下认识: 赋值是将一个对象的地址赋值给一个变量,让变量指向该地址( ...
- asterisk控制台取消NOTICE信息
中道拨号方案取消了控制台输出的NOTICE信息: 方法:vim /etc/asterisk/logger.conf;console => notice,warning,error把上面这行取消 ...
- TImage 显示 资源中 的图片、TResourceStream、资源文件
unit Unit5; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System ...
- Java 容器的打印
Java容器类库中的两种主要类型,它们的区别在于容器中每个"槽"保存的元素个数 Clollection容器只能在保存一个元素,此类容器包括: List,它以特定顺序保存一组元素 S ...
- Zookeeper原理架构与搭建
一.Zookeeper到底是什么!? 学一个东西,不搞明白他是什么东西,哪还有心情学啊!! 首先,Zookeeper是Apache的一个java项目,属于Hadoop系统,扮演管理员的角色. 然后看到 ...
- Kubernetes 概述和搭建(多节点)
一.Kubernetes整体概述和架构 Kubernetes是什么 Kubernetes是一个轻便的和可扩展的开源平台,用于管理容器化应用和服务.通过Kubernetes能够进行应用的自动化部署和扩缩 ...
- MySQL学习笔记:删除存储过程和函数
删除存储过程.存储函数主要使用drop语句: drop procedure —— 删除存储过程 drop function —— 删除存储函数 语法: DROP {PROCEDURE|FUNCTI ...
- python对象学习
python对象的介绍 python使用对象模型来存储数据,构造任何类型的值都是一个对象,尽管python被当成面向对象的编程语言,但是完全编写不使用任何类和实例的脚本.所有的python对象都拥有三 ...
- luogu P1126 机器人搬重物 题解
luogu P1126 机器人搬重物 题解 题目描述 机器人移动学会(\(RMI\))现在正尝试用机器人搬运物品.机器人的形状是一个直径\(1.6\)米的球.在试验阶段,机器人被用于在一个储藏室中搬运 ...