【Node&Vue】什么是ECMAScript?

前言

本篇文章主要从 ECMAScript 引入,讲一讲啥是 ECMAScript。

也会附带讲到 V8、JS、Node.js 与 ECMAScript 的关系。【这一块内容其实也很重要】

看完之后相信你可以用自己的话说出

啥是 ECMAScript。

并且也会对V8、JS、Node.js 与 ECMAScript 的关系有一个比较清楚的认识

注:结尾会有对标题的回答

正文

一、什么是 ECMAScript?------ 初印象

  1. 【!!重要!!】它是一种规范 。JS 是其中一个比较出名的实现。 就第一点最重要,后面的可看可不看
  2. ECMAScript 的全称是 "European Computer Manufacturers Association Script",中文意为"欧洲计算机制造商协会脚本"。

二、ECMAScript 与 Node.js 的关系

  1. ECMAScript 是语言规范用来规定 JS 要怎么写才是正确的。
  2. Node.js 是 JS 的运行环境,JS 程序员用 ECMAScript 所规定的语法写代码,Node.js 中的 V8 负责解析和执行这些 JS 代码

三、【补充】:Node.js 与 V8 的关系简述如下

  1. Node.js 底层使用 V8 来解析和运行 JavaScript。任何 JS 代码在 Node.js 中的执行最终都由 V8 处理。

  2. V8 是一个愣头青,只解析执行 JS 代码,其他的比如操作文件之类的通通不管 ------ Node.js 的原生模块弥补了这一块内容

  3. Node.js 知名度最高的事件循环(Event Loop) 和非阻塞 I/O 模型和 V8 没啥关系,【上面也说了 V8 这个愣头青专门解析和执行 JS 代码】而是 Node.js 自己整合的 libuv 库实现的。

  4. 各个 Node.js 版本一般有其对应的 V8 版本。这个应该比较好理解。因为首先 ECMAScript 在不断发展,假设今天 ECMAScript 新增了 A 特性,那么 V8 就会去新增 A 特性的兼容,而 Node.js 底层通过 V8 去解析、执行 JS 代码,如果 Node.js 不去实时更新对应的 V8 版本,那就跟不上 ECMAScript 那边定义的新特性了。其实 Node.js 官网也给出承诺了,原文的部分内容如下:

    Node.js is built against modern versions of V8. By keeping up-to-date with the latest releases of this engine, we ensure new features from the JavaScript ECMA-262 specification are brought to Node.js developers in a timely manner, as well as continued performance and stability improvements.

总结

最后回归一下主题!

【问】什么是 ECMAScript?

【直接秒杀版-答】

ECMAScript 是一种语言规范,规定了 JS 要怎么写才是正确的。

相关链接

相关推荐
Geoffwo几秒前
robotjs0.6.0鼠标中轴滚动失效修复方案
前端·javascript
彭亚川Allen11 分钟前
从零手搓 RAG 之文档解析技术
前端·后端·架构
苏渡苇33 分钟前
Spring Insight:跨服务调用链路是怎么串起来的?
spring boot·后端·spring·系统监控·apm
oicola34 分钟前
Ant Design v5 vs Tailwind CSS:组件库与样式框架的终极对决
前端·css
溪语流沙39 分钟前
【Web全栈进阶】Vue Router + Pinia:SPA路由与全局状态
前端·javascript·vue.js
ManageEngineITSM1 小时前
工单优先级怎么定?影响×紧急度矩阵的设计与落地方法
java·大数据·运维·前端·数据库·变更管理
智商网输送线配件1 小时前
电子制造零散耗材补货实战:小批量混批采购平台怎么选才不停机?
大数据·服务器·前端·数据库·自动化
梦帮科技1 小时前
Web 漏洞攻防深度:WAF 规则逃逸技术(畸形分块传输、双重编码)与对抗加固
linux·前端·网络安全·ssl·web
兰亭妙微UI设计公司1 小时前
兰亭妙微软件界面设计公司的解锁按钮设计10大密码
开发语言·前端·javascript
迪幻1 小时前
封装自己的 npm 依赖并存储到个人 GitHub
前端·npm·github