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学 ...
随机推荐
- docker stack 部署 rabbitmq 容器
=============================================== 2018/5/13_第1次修改 ccb_warlock == ...
- js实现ctrl+v粘贴图片或是截图
浏览器环境:谷歌浏览器 1.ctrl+v粘贴图片都是监听paste时间实现的,复制的数据都存在clipboardData下面,虽然打印显示数据长度为0,但是还是可以获取数据的 2.打印clipboar ...
- Java内存优化和性能优化的几点建议
1.没有必要时请不用使用静态变量 使用Java的开发者都知道,当某个对象被定义为stataic变量所引用,这个对象所占有的内存将不会被回收.有时,开发者会将经常调用的对象或者变量定义为static,以 ...
- 怎么区分MSSQL中nvarchar和varchar的区别?
怎么区分MSSQL中nvarchar和varchar的区别呢?下面两段代码可以帮你看到他们的区别. declare @s Nvarchar(10) set @s='那么相当于abcd可以存储多少个汉字 ...
- java内存溢出分析工具
http://www.cnblogs.com/preftest/archive/2011/12/08/2281322.html java内存溢出分析工具:jmap使用实战 在一次解决系统tomcat老 ...
- CentOS7 之基础设置及常见操作命令
1.Host SMbus controller not enabled 解决方法: 在 /etc/modprobe.d/blacklist.conf 文件里添加 blacklist i2c_piix4 ...
- Ionic Js十四:浮动框
$ionicPopover $ionicPopover 是一个可以浮在app内容上的一个视图框. 实例 HTML 代码 <p> <button ng-click="open ...
- CSU - 2055 Wells‘s Lottery
Description As is known to all, Wells is impoverished. When God heard that, God decide to help the p ...
- iview-cli 项目、iView admin 跨域问题解决方案
在build 目录的 webpack.dev.config.js 目录中 module.exports = merge(webpackBaseConfig, { devtool: '#source-m ...
- jdk1.8下字符串常量的判断,String.intern()分析
字符串常量池在jdk升级过程中发生了一些变化 在JDK1.6中,它在方法区中,属于“永久代”. 在JDK1.7中,它被移除方法区,放在java堆中. 在JDK1.8中,取消了“永久代”,将常量池放在元 ...