Node(一)

Node.js是什么

传统意义上的javascript运行在浏览器上,这是因为浏览器内核实际上分为两个部分,渲染引擎javaScript引擎。前者主要负责渲染HTML+CSS,后者主要负责运行javaScript

Node.js是JavaScript语言的服务器运行环境。所谓“运行环境”有两层意思:首先,JavaScript语言通过Node在服务器运行,在这个意义上,Node有点像JavaScript虚拟机;其次,Node提供大量工具库,使得JavaScript语言与操作系统互动(比如读写文件、新建子进程),在这个意义上,Node又是JavaScript的工具库。

Node.js内部采用Google公司的V8引擎,作为JavaScript语言解释器;通过自行开发的libuv库,调用操作系统资源。

总结:

(1)浏览器的内核

  1. 渲染引擎:用于渲染HTML、CSS
  2. js引擎:用于执行JavaScript代码

(2)Node.js搭建了一个JavaScript的服务器运行环境,JavaScript可以脱离浏览器直接运行
(3)Node相当于JavaScript的虚拟机,虚拟的构建一个JavaScript的“运行环境”
(4)Node使用的谷歌的V8引擎,可以方便的调用操作系统资源

为什么要用Node.js

javaScript语言本身是完善的函数式语言,在前端开发时,开发人员往往写得比较随意,让人感觉JavaScript就是个“玩具语言”。无法像其他编程语言一样满足工程的需要。

但是,在Node环境下,通过模块化的JavaScript代码,加上函数式编程,并且无需考虑浏览器兼容性问题,直接使用最新的ECMAScript 6标准,可以完全满足工程上的需求。

Node.js 适合以下场景:

  1. 实时性应用,比如在线多人协作工具,网页聊天应用等。
  2. 以 I/O 为主的高并发应用,比如为客户端提供 API,读取数据库。
  3. 流式应用,比如客户端经常上传文件。
  4. 前后端分离。

Node.js应用程序的示例

const http = require("http");    //引入node的http模块

//设置服务器地址和端口号
const hostname = "127.0.0.1";
const port = 3000;

//创建http服务器
const server = http.createServer((req,res)=>{
    /*
    req:是ruquest(请求对象):包含客户端向服务器端发送的请求信息

    res:是response对象(响应对象):包含服务器端向客户端发送的响应信息
    */

    res.statusCode = 200;    //服务器向客服端发送的状态码
    res.setHeader("Content-type","text/plain");    //设置响应头信息:服务器向客服端发送的相应信息的格式
    res.end("Hello World!");    //关闭响应同时向客服端发送字符串
})

//启动服务器端的监听
server.listen(port,hostname,()=> {
    console.log(`服务器运行在:http://${hostname}:${port}`);
})

npm

npm:是node自带的包管理器,用于安装、卸载node程序中使用的模块。

  1. 下载并安装npm服务器上的第三方模块
  2. 下载安装别人编写好的命令行程序
  3. 可以将自己写的模块上传到npm服务器(实现了模块的共享)

(1)npm-v

npm-v:查看npm是否安装成功和版本号

(2)npm install npm -g

npm install npm -g:升级npm

(3)全局安装

 全局安装:npm install 模块名称 -g

(4)本地安装

本地安装:npm install 模块名称

(5)安装指定版本号的模块

npm install 模块名称@版本号

(6)cnpm

重新安装一个cnpm(定位到淘宝镜像),用cnpm命令安装模块

(7)卸载安装的模块

npm uninstall 模块名称

yarn包管理器

yarn是一款高效、快速、安全可靠的包管理器

(1)带有缓存机制

缓存机制:将第一次下载的包缓存下来,提高了包的安装下载速度。

(2)安装yarn

npm install yarn

(3)初始化

yarn init

(4)查看版本号

yarn --version

(5)安装模块

yarn add 模块名称@版本号

(6)卸载模块

yarn remove 模块名称

REPL环境

REPL(Read-eval-print-loop):读取-求值-输出-循环

可以直接运行JavaScript的各种指令

打开方式:cmd窗口输入node回车。

(1)“_”:返回上一条指令

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值