十一、Node.js

一、Node.js是什么?

在了解Node.js之前,我们先去了解一下什么叫v8引擎。这里参考一下其他博主的资料。

聊聊V8引擎_努力学习前端的77的博客-CSDN博客

这个时候我们再去看下Node.js的定义。

官方对Node.js的定义: 

  • Node.js是一个基于V8 JavaScript引擎的JavaScript运行时环境。

 

也就是说Node.js基于V8引擎来执行JavaScript的代码,但是不仅仅只有V8引擎:

  • 前面我们知道V8可以嵌入到任何C ++应用程序中,无论是Chrome还是Node.js,事实上都是嵌入了V8引擎来执行JavaScript代码
  • 但是在Chrome浏览器中,还需要解析、渲染HTML、CSS等相关渲染引擎,另外还需要提供支持浏览器操作的API、浏览器自己的事件循环等;
  • 另外,在Node.js中我们也需要进行一些额外的操作,比如文件系统读/写、网络IO、加密、压缩解压文件等操作;

我们可以简单理解规划出Node.js和浏览器的差异: 

 

我们来看一个单独的Node.js的架构图:

  • 我们编写的JavaScript代码会经过V8引擎,再通过Node.js的Bindings,将任务放到Libuv的事件循环中;
  • libuv(Unicorn Velociraptor—独角伶盗龙)是使用C语言编写的库;
  • libuv提供了事件循环、文件系统读写、网络IO、线程池等等内容; 

 

二、Node.js的应用场景 

Node.js的快速发展也让企业对Node.js技术越来越重视,在前端招聘中通常会对Node.js有一定的要求,特别对于高级前端开发工程师,Node.js更是必不可少的技能。

  • 应用一:目前前端开发的库都是以node包的形式进行管理;
  • 应用二:npm、yarn、pnpm工具成为前端开发使用最多的工具;
  • 应用三:越来越多的公司使用Node.js作为web服务器开发、中间件、代理服务器;
  • 应用四:大量项目需要借助Node.js完成前后端渲染的同构应用;
  • 应用五:资深前端工程师需要为项目编写脚本工具(前端工程师编写脚本通常会使用JavaScript,而不是Python或者shell);
  • 应用六:很多企业在使用Electron来开发桌面应用程序;

三、Node的安装

 

Node的版本工具:

  

 

四、JavaScript代码执行

 如果我们编写一个js文件,里面存放JavaScript代码,如何来执行它呢?

目前我们知道有两种方式可以执行:

  • 将代码交给浏览器执行;
  • 将代码载入到node环境中执行;

如果我们希望把代码交给浏览器执行:

  • 需要通过让浏览器加载、解析html代码,所以我们需要创建一个html文件;
  • 在html中通过script标签,引入js文件;
  • 当浏览器遇到script标签时,就会根据src加载、执行JavaScript代码;

如果我们希望把js文件交给node执行: 

  • 首先电脑上需要安装Node.js环境,安装过程中会自动配置环境变量;
  • 可以通过终端命令node js文件的方式来载入和执行对应的js文件;

 

  

怎么给程序输入内容?

 

 

什么是REPL? (了解即可)

 


五、Node的输出:

 

六、常见的全局对象

 

 七、特殊的全局对象

八、常见的全局对象

 

九、global对象

 

十、global和window的区别

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值