欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Node.js(安装Node.js)

程序员文章站 2022-06-14 11:00:54
...

Node.js(安装Node.js)

一、安装Node.js

nodejs官网:http://nodejs.org/
nodejs中文文档:http://nodejs.cn/api/

我们要检查nodejs是否已经安装成功了。此时需要打开系统的“命令提示符”窗口。

  1. 按windows徽标键 + R键;
  2. 输入CMD按回车(CMD就是command命令的缩写。);
  3. 然后就能看见这个黑底白字的命令提示符窗口。(我们以后简称“CMD”窗口);
  4. 输入node -v此时就能看见版本号,说明nodejs安装成功了。

什么是环境变量?

任何操作系统(windows、mac、linux)都有环境变量的概念,作用很简单:
在环境变量中的文件夹里面的所有exe程序都可以被当做系统级别的命令在CMD窗口中被调用。

环境变量是用英语分号隔开的一系列文件夹的路径。比如,将QQ的文件夹添加进去了。
此时再次打开CMD创建,就可以运行QQ命令了

我们的node.js的msi安装包自动的将nodejs的安装目录设置为了环境变量。极大的方便了我们。
因为nodejs的目录在环境变量中,所以我们刚才可以在CMD中运行

二、Node.js的基本使用

-运行谁就node谁(在Node环境下执行代码,使用Node命令执行后缀为.js的文件即可

JS需要宿主环境才能运行。截止今日,我们只知道js的一个宿主环境,就是HTML。
今天我们迎来了新的宿主:nodejs平台!

在nodejs平台中运行js文件,此时需要使用CMD窗口。此时需要将CMD的“光标路径”更改为我们的项目文件夹

此时使用下面的命令可以切换路径:
cd 新路径(按Tab可以自动补全)
(cd就是change directory切换文件夹的意思。)

补充一下:
cls(表示清屏)

快捷操作:

  1. 在项目文件夹中按住shift键的同时,点击鼠标右键,此时就能看见
  2. 在项目文件夹的路径上输入cmd,然后回车

Node.js 的组成

  • JavaScript 由三部分组成,ECMAScript,DOM,BOM。
  • Node.js是由ECMAScript及Node 环境提供的一些附加API组成的,包括文件、网络、路径等等一些更加强大的 API。

所有ECMAScript语法在Node环境中都可以使用。

由于nodejs平台没有DOM所以不能使用下面的语法:
window、document、alert、document.getElementById()……

但是nodejs能够识别函数、if语句、for、while等等js核心语法:

for(var i = 0 ; i < 10 ; i++){
	console.log(haha(i));
}

function haha(a){
  	return a * 3;
}

Node.js全局对象global

在浏览器中全局对象是window,在Node中全局对象是global。

// Node中全局对象下有以下方法,可以在任何地方使用,global可以省略。
console.log()     在控制台中输出
setTimeout()     设置超时定时器
clearTimeout()  清除超时时定时器
setInterval()      设置间歇定时器
clearInterval()   清除间歇定时器
 __filename : 返回当前模块文件解析后的绝对路径,该属性其实并非全局的,而是模块作用域下的
 __dirname : 返回当前模块文件所在目录解析后的绝对路径,该属性也不是全局的,而是模块作用域下的

//console.log(__filename);
//console.log(__dirname);

//var d = new Date();
//var arr = new Array(1,2,3);

setInterval(function() {

    var d = new Date();

    console.log( '现在是:' + d.getFullYear() + '年' + (d.getMonth() + 1) + '月' + d.getDate() + '日 ' + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds() );

}, 1000);

三、使用Node.js 搭建服务器

最简单的demo

我们需要使用nodejs中的内置模块http模块,nodejs中有很多模块,我们最先使用的就是http模块。

//得到内置http模块
var http = require("http");

//创建服务器,使用createServer方法来创建服务器。
//回调函数中有一个req参数表示请求,res参数表示响应。
var server = http.createServer(function(req,res){
	//输出
	res.end("Hello NodeJS !!");
});

//监听,我们的默认80端口已经被阿帕奇占用了,所以我们监听3000端口。
server.listen(3000);

先照着写,然后就可以运行这个程序。

光标被挂起
此时不要关闭CMD窗口!打开浏览器,输入网址:
http://127.0.0.1:3000/
冒号表示端口号,默认端口是80,但是我们的80被阿帕奇占用了,所以我们就使用3000端口了。

如果想要打断服务器的执行,此时在CMD中按ctrl+c键。
一旦打断了挂起的CMD,此时浏览器中就崩溃了:

注意:如果改变了js文件,此时刷新浏览器没用,必须重新执行node命令!

问题:

  • 问题 1:
res.end("好高兴啊我买了一个iPhone" + (1+32));

在浏览器中查看源代码,不能看见1+32的运算结果的。这是因为程序运行在服务器上。

  • 问题 2:

用户的电脑里面没有安装nodejs平台,此时也可以访问nodejs服务器,因为nodejs运行在服务器上,发给客户端的时候已经变为纯的、平的HTML了!

  • 多条输出用write,但是最后必须有end:
	res.write("哈哈");
	res.write("哈哈");
	res.write("哈哈");
	res.write("哈哈");
	res.write("哈哈");
	res.end("好高兴啊我买了一个iPhone" + (4+4));
  • ** **res.write()和res.end()中只能是字符串不能是数字:
res.end(123); //错误的
res.end("123"); //正确的
  • 可以结合HTML标签:
res.end("<h1>你好,NodeJS我来了</h1>");

Node自动重启工具 nodemon

在编写调试Node.js项目,修改代码后,需要频繁的手动close掉,然后再重新启动,非常繁琐。现在,我们可以使用nodemon这个工具,它的作用是监听代码文件的变动,当代码改变之后,自动重启。

安装:

npm install -g  nodemon

启动:

nodemon index.js

我们只需要刷新浏览器,就可以看到改动后的内容。

如果想要打断服务器的执行,此时在CMD中按ctrl+c键。

相关标签: Node.js