node.js和JavaScript的关系
Posted Nemo_XP
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node.js和JavaScript的关系相关的知识,希望对你有一定的参考价值。
node.js是一个基于 Chrome V8 引擎的 JavaScript 运行时环境。(有些类似JRE和.net)
一、类比javascript和java
JavaScript | java |
---|---|
V8 | JVM |
node.js | JRE |
JavaScript和java都是一门编程语言,至于两者的关系,是雷锋和雷峰塔的关系
V8是google开源的JavaScript引擎,用于执行JavaScript,类似JVM执行java字节码。在node.js诞生之前,V8是内置于Chromium中的,现在也内置于node.js中
node.js=V8+内置基本模块(大多用JavaScript编写),类似JRE=JVM+java标准库
node.js诞生之前,JavaScript只能运行于浏览器,现在也可以在服务器端运行于node.js
二、翻译一段Quora回答
下面翻译一段Quora上What is the difference between JavaScript and Node.js问题下Mattias Petter Johansson的回答。
JavaScript是一门语言
node.js不是一门语言,也不是一种特殊的JavaScript方言 - 它仅仅就是用于运行普通JavaScript代码的东西
所有浏览器都有运行网页上JavaScript的JavaScript引擎。Firefox有叫做Spidermonkey的引擎,Safari有JavaScriptCore,Chrome有V8
node.js就是带有能操作I/O和网络库的V8引擎,因此你能够在浏览器之外使用JavaScript创建shell脚本和后台服务或者运行在硬件上
三、浏览器端和服务器端JavaScript组成区别
浏览器端:
ECMAScript,描述了JavaScript语言的语法和基本对象
文档对象模型(DOM),描述处理网页内容的方法和接口
浏览器对象模型(BOM),描述与浏览器进行交互的方法和接口
服务器端:
ECMAScript
node.js内置模块:文件系统I/O、网络(HTTP、TCP、UDP、DNS、TLS/SSL等)、二进制数据流、加密算法、数据流等等
转自:https://www.cnblogs.com/thinkam/p/8262743.html
以上是关于node.js和JavaScript的关系的主要内容,如果未能解决你的问题,请参考以下文章