在Node.js中比啊些JavaScript应用程序与在浏览器中为Web编程有何不同
浏览器和Node均使用JavaScript作为编程语言
构建在浏览器中运行的应用程序与构建在Node.js应用程序完全不同
尽管事实始终是JavaScript,但仍存在一些关键差异,试体验完全不同
作为广泛使用Javascript的前端开发人员,Node应用程序带来了巨大的优势-使用单一语言轻松编程所有内容(前端和后端)
生态系统发生了什么变化。
# 区别一
在浏览器中,大多数时候您正在做的是与DOM或其它Web平台 API(例如cookies)进行交互。当然,那些在Node中不存在。你没有document,window并通过浏览器提供的所有其它对象
而且在浏览器中,我们没有Node.js通过其模块提供的所有不错的API,例如文件系统访问功能
# 区别二
另一个很大的不同是,在Node.js中,您可以控制环境。除非您构建一个任何人都可以在任何地方部署的开源应用程序。否则您将知道将在哪个版本的Node上运行该应用程序。与浏览器环境相比,在浏览器环境中,您无法选择访客会使用的浏览器,这非常方便
这意味着您可以编写你的Node版本支持的所有现代ES6-7-8-9JavaScript
由于JavaScript的移动速度如此之快,但是浏览器可能会变慢,而用户的升级会变慢,有时是在网络上,因此您不得不使用较旧的JavaScript/ECMAScript版本。
您可以使用Babel将代码转换为与ES5兼容,然后再将其交付给浏览器,但是在Node中,则不需要这样做。
# 区别三
另一个区别是Node使用CommonJS模块系统,而在浏览器中,我们开始看到正在实现ES模块标准
实际上,这意味着你暂时require()在Node和import浏览器中使用。