首页 技术 正文
技术 2022年11月15日
0 收藏 502 点赞 3,946 浏览 962 个字

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

一、类比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等)、二进制数据流、加密算法、数据流等等

四、参考资料

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,086
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,561
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,410
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,183
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,820
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,903