首页前端开发JavaScriptNode.js中的全局对象有哪些?有什么用?

Node.js中的全局对象有哪些?有什么用?

时间2024-01-29 23:10:02发布访客分类JavaScript浏览346
导读:收集整理的这篇文章主要介绍了Node.js中的全局对象有哪些?有什么用?,觉得挺不错的,现在分享给大家,也给大家做个参考。本篇文章带大家了解一下Node.js中的全局对象,看看Node.js中有哪些全局对象,这些全局对象有什么用?怎么用?一...
收集整理的这篇文章主要介绍了Node.js中的全局对象有哪些?有什么用?,觉得挺不错的,现在分享给大家,也给大家做个参考。本篇文章带大家了解一下Node.js中的全局对象,看看Node.js中有哪些全局对象,这些全局对象有什么用?怎么用?一起来学习吧!

所谓全局对象,就是可以直接访问的对象,比如

  • 浏览器中的的全局对象就是window
  • Node 中的全局对象就是global

下面让我们看看 Node 的全局对象具体有哪些? 这些对象又有什么用?【推荐学习:《nodejs 教程》】

如何获取全局对象

在某些老项目中,我们可能看到这样的代码片段

const getGlobalThis = () =>
 {
      // 在 webworker 或 service worker 中  if (tyPEof self !== "undefined") return self;
      // 在浏览器中  if (typeof window !== "undefined") return window;
      // 在 Node.js 中  if (typeof global !== "undefined") return global;
      // 独立的 JavaScript shell  if (typeof this !== "undefined") return this;
      throw new Error("Unable to locate global object");
}
    ;
    const theGlobalThis = getGlobalThis();
if (typeof theGlobalThis.setTimeout !== "function") {
  // 此环境中没有 setTimeout 方法!}
    

这是因为各个 JS 环境获取全局对象的方式都是不同的,所以通过封装了一个getGlobalThis来统一获取所有环境的全局对象

但是自从 ES13 特性出现后,支持使用globalThis 这种标准的方式来获取不同环境下的全局 this 对象(也就是全局对象自身)

if (typeof globalThis.setTimeout !== "function") {
  // 此环境中没有 setTimeout 方法!}
    

与浏览器相似的全局变量

Node.js 的全局变量与 Chrome 有一些差点,但也有很多类似的

我们启动一个简易的 Node 项目,然后打印如下的东西,看看能否正常输出

  • Date 对象 ✅
console.LOG(Date);
    // [Function: Date]
  • Math 对象 ✅
console.log(Math);
// Object [Math] {
}
    
  • setTimeout 对象 ✅
console.log(setTimeout);
/*[Function: setTimeout] {
  [Symbol(nodejs.util.PRomisify.custom)]: [Function]}
    */
  • setInterval 对象 ✅
console.log(setInterval);
    // [Function: setInterval]
  • setImmediate 对象 ✅
console.log(setImmediate);
/*[Function: setImmediate] {
  [Symbol(nodejs.util.promisify.custom)]: [Function]}
    */
  • requestAnimationFrame 对象 ❌

requestAnimationFrame代表浏览器渲染的下一帧,所以在服务端环境是不存在的

// 浏览器渲染的下一帧,所以在服务端环境中是不存在的console.log(requestAnimationFrame);
    // ReferenceError: requestAnimationFrame is not defined

Node.js 特有的全局变量

// 当前代码所运行的脚本位置console.log(__filename);
    // D:\MyCode\GITee\Learning.Node\geek-nodejs\08\index.js// 当前代码所运行的脚本目录console.log(__dirname);
    // D:\MyCode\Gitee\Learning.Node\geek-nodejs\08
console.log(process);
    

version: Node.js 版本号platform , Arch: 运行环境的操作系统kill , exit : 用于管理,或者杀进程的操作hrtime: 用于统计时间,可以精确到微秒级cpuusage: CPU 占用率resourceUsage: 内存占用率env: Node 的环境变量,作用:可以设置环境变量,以便在不同的开发中使用argv:用户在启动程序时,敲击的命令是怎样的, 作用:命令行程序中使用........................

更多编程相关知识,请访问:编程入门!!

以上就是Node.js中的全局对象有哪些?有什么用?的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

上一篇: javascript特性有哪些下一篇:javascript变量的意思猜你在找的JavaScript相关文章 html font标签如何设置字体大小?html font标签属性用法介绍2022-05-16vue3+TypeScript+vue-router的使用方法2022-04-16vue3获取当前路由地址2022-04-16如何利用React实现图片识别App2022-04-16JavaScript展开运算符和剩余运算符的区别详解2022-04-16微信小程序中使用vant框架的具体步骤2022-04-16Vue elementUI表单嵌套表格并对每行进行校验详解2022-04-16如何利用Typescript封装本地存储2022-04-16微信小程序中wxs文件的一些妙用分享2022-04-16JavaScript的Set数据结构详解2022-04-16 其他相关热搜词更多phpjavapython程序员loadpost-format-gallery

若转载请注明出处: Node.js中的全局对象有哪些?有什么用?
本文地址: https://pptw.com/jishu/591722.html
javascript url怎么隐藏 javascript怎么实现浮动窗口

游客 回复需填写必要信息