NodeJs的介绍

安装nodejs:NodeJS、NPM安装配置步骤(windows版本)

一.nodeJs是什么?

JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。

每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情。例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了document之类的内置对象。而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器,NodeJS就相应提供了fshttp等内置对象。


简洁点:可以运行在后端的JavaScript,使用JavaScript 来开发。


二.为什么它能够在后端运行呢?

这就得归功于V8引擎(V8是Google Chrome浏览器的JavaScript引擎),通过对高性能V8引擎的封装,并通过一系列优化的API类库,使其就能够在后端运行了。

三.为什么要用 Node.js

既然 PHP、Python、Java 都可以用来进行后端开发,为什么还要去学习 Node.js?在什么场景下,选择 Node.js 更合适。
总的来说,Node.js 适合以下场景:
1.实时性应用,比如在线多人协作工具,网页聊天应用等。
2.以 I/O 为主的高并发应用,比如为客户端提供 API,读取数据库。
3.流式应用,比如客户端经常上传文件。
4.前后端分离。
实际上前两者可以归结为一种,即客户端广泛使用长连接,虽然并发数较高,但其中大部分是空闲连接。
        Node.js 也有它的局限性,它并不适合 CPU 密集型的任务,比如人工智能方面的计算,视频、图片的处理等。
当然,以上缺点不是信口开河,或者死记硬背,更不是人云亦云,需要我们对 Node.js 的原理有一定的了解,才能做出正确的判断。


四.NodeJs特点

1.它是一个Javascript运行环境

2.依赖于chrome V8引擎进行代码解释

3.事件驱动

4.非阻塞I/O

5.轻量,可伸缩,适于实时数据交互应用

6.单进程,单线程


五.起一个web服务器

nodeJS的运用规则:
1.通过request将HTTP库包含到程序中
2.创建新的http服务器(调用引入的HTTP模块的一个工厂模式方法(createServer)来创建一个新的http服务器)
3.通过request事件响应request请求


注意http.createServer([requestListener])方法:


http.createServer([requestListener])用来创建一个HTTP服务器,
并将 requestListener 作为 request 事件的监听函数。
语法:
由于该方法属于http模块,使用前需要引入http模块(var http= require(“http”) )
接收参数:
requestListener   请求处理函数,自动添加到 request 事件,函数传递两个参数:
   ①req  请求对象,想知道req有哪些属性,可以查看 “http.request 属性整合”。
    (如请求那个url地址过来;请求类型是get还是post)

   ②res   响应对象 ,收到请求后要做出的响应。想知道res有哪些属性,可以查看 “http.response属性整合”。

eg:在f:中创建demo_node文件

建main.js文件

//1.通过require将http库包含到程序中
var http = require('http');
//2.创建新的HTTP服务器
var server = http.createServer();
//通过request事件来响应request请求
server.on('request',function(req, res){
    res.writeHead(200, {'Content-Type':'text/plain'});
    res.end('Hello World\n');    
});
server.listen(1337,'127.0.0.1');//监听的端口号1337
console.log('Server running!');


好了,开启nodeJS交互环境,运行该js文件,我的命名是main.js。

这样http服务器就启好了,接下来我们再打开网页,输入http://127.0.0.1:1337,看看效果



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值