美文网首页
04-NodeJS核心基础-Node环境和浏览器环境的区别

04-NodeJS核心基础-Node环境和浏览器环境的区别

作者: 仰望_IT | 来源:发表于2020-03-22 13:53 被阅读0次

    NodeJS环境和浏览器环境一样都是一个JS的运行环境, 都可以执行JS代码
    但是由于宿主不同, 所以特点也有所不同

    1.内置对象不同

    • 浏览器环境中提供了window全局对象
    window
    • NodeJS环境中的全局对象不叫window, 叫global
    window报错
    global

    2.this默认指向不同

    • 浏览器环境中全局this默认指向window
    • NodeJS环境中全局this默认指向空对象{}
    NodeJS中的this

    3.JS引擎不完全一样

    Nodejs是基于Chrome's JavaScript runtime,也就是说,实际上它是对GoogleV8引擎(应用于Google Chrome浏览器)进行了封装
    NodeJS并不是提供简单的封装, NodeJS对一些特殊用例进行了优化,提供了替代的API,使得V8引擎在非浏览器环境下运行的更好。

    4.API不同

    • 浏览器环境中提供了操作DOM和BOM相关的API
    • NodeJS环境中没有HTML节点也没有浏览器, node是一门服务器技术,没有前台页面;
      所以NodeJS环境中没有DOM和BOM。

    5.I/O读写

    与浏览器不同,我们需要像起他服务端技术一样读写文件,NodeJS提供了比较方便的组件。
    而浏览器想在页面中直接打开一个本地的图片就麻烦了好多,而这些node都用一个组件搞定了。

    6.模块加载

    在NodeJS环境中提供了cmd的模块加载的API,Node还提供了npm这种包管理工具,能更有效管理引用的库。

    相关文章

      网友评论

          本文标题:04-NodeJS核心基础-Node环境和浏览器环境的区别

          本文链接:https://www.haomeiwen.com/subject/dkomyhtx.html