Nodejs 与 javascript 不可通用的原因

て烟熏妆下的殇ゞ 提交于 2020-02-29 15:15:50

1. 三种规范: AMD / CMD / COMMONJS

  • AMDCMD 都属于 COMMONJS 规范,规范提出的目的是为 js 这门松散的语言提供 一致性,标准性 的模块化机制,为开发大型应用,桌面应用,服务后台提供前提。

  • 三种规范分别具有不同的实现,AMD -> requirejs, CMD -> seajs, COMMONJS -> nodejs , 这里只列出比较常见的实现。***

  • 大体上三种规范重叠性比较大,具体不同请具体查看规范对比

  • 任何上述标准的实现中需要提供 require(), module,module.exports,exports 四个全局对象。

####2. 一切为了安全: 浏览器

浏览器的与众不同,在于它是一个开放平台式的软件,浏览器只是提供了一些运行环境,而实际的内容贡献者确不是浏览器厂商,为了保证网页发布者的安全,网页浏览者的安全,浏览器不得不限制很多权 限,防止对用户,网页发布者的危害,常见的有: 本地文件操作权限,可执行命令访问权限 等,与网页相关的有 跨域访问限制等。

####3. 多语言集成

  • 谈到web开发,Html Css Js 算是三个元老级的语言了,其实,从程序的角度来看,html ,css 并不算是一种编程语言,甚至在一定角度上,更像是一种协定好了的配置文件,或者协议栈。所以, 在浏览器中,Js 能够交互的多语言环境,其实应该只有它自己,当然对于IE 中可以调用ocx本地接口的这个不算做w3c标准之中。

  • 对于Nodejs来说,却能够通过各种调用方式来与其他语言合作,完成对于JS完全意想不到的事情。

####4. 网络传输协议

  • Js 目前支持 http协议,https协议,以及 websocket

  • Nodejs作为本地语言,可以访问到本地资源,这意味着只要硬件允许,nodejs 可以使用任意网络传输协议传输数据。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!