- 相同点
- 他们都使用Javascript作为其编程语言
- 不同点
- 在浏览器中,JavaScript大部分时间都在与DOM进行交互,还用作其他的Web平台的API,如WebRTC, Websockets, XMLHttpRequest等,然而在Node中, 你不可以使用document,也没有window对象,取而代之的是global, 以及其他由浏览器提供的对象。
- 在浏览器中,你也不可以使用Node中很好的API,如filesystem,用于访问宿主机的文件系统。
- Node可以控制其运行的环境,作为一个后端开发者,你可以选择运行你Node应用的运行时版本,除非你开发的是一个可以运行在任何地方的开源应用。而在浏览器中,往往不能控制其浏览器的版本。
- 在浏览器中,你可以使用Babel来将ES5+语法转换为ES5兼容的语法,以保证可以在绝大多数浏览器中运行,而在Node中,你无需进行此项操作,你的Node运行时版本决定了你可以使用哪些语法,而你可以决定Node运行时版本。
- 在Node 中,支持CommonJS 和 ES (v12+)模块系统,在浏览器中,ES模块标准正在实施。