Notes
  • 速记
  • 前端面试
  • HTML / CSS
    • HTML
    • CSS
    • CSS Modules
      • CSS Modules
        • CSS Modules Usage
      • Stylus
      • Nunjucks
  • Javascript
    • 正则表达式
    • 代理(Proxy)和反射(Reflection)
    • 类型转换
    • 按位操作
    • 数据可视化
    • 数据采集
      • 无(全)埋点
      • 模块曝光事件
    • package
      • axios
    • Event Loop
    • React
      • React热身
      • VDOM和DOM-diff
    • Vue
    • Omi
    • MVVM
    • 百度小程序
    • AST抽象语法树
    • ServiceWorker
    • WebSocket
  • NodeJS
    • Assert 断言
    • chai.js 断言库
    • Node Global Obj And Var
    • CLI Writed By Nodejs
    • Framework
      • Hapi Js Framework
    • Electrode JS
      • Electrode Platform
      • Electrode Question
    • Redux
      • Redux Basic Usage
      • Middleware And Asynchronous
      • React-Redux 的用法
    • NPM
      • package.json
      • semver
    • Webpack
      • 编写插件
    • 同构渲染
    • 调用DLL
  • 服务端
    • Inotify
    • Linux
    • Nginx
      • Nginx简介
      • Nginx原理、安装预配置
    • TCP/IP 协议
    • HTTP 协议
      • 基础概念篇
      • 协议详解篇
    • Process
      • 阻塞与非阻塞
      • 进程与线程优性能
  • 数据库
    • GraphQL
  • 移动端
  • 微信小程序
    • 微信小程序安装(linux)
    • 小程序第三方框架
  • 开发工具
    • 开发工具安装
    • Vim Command Collection
    • Git
      • Git Rule
      • Git Submodule
      • gitignore
    • Lerna
    • Ubuntu开发环境安装
  • 运维测试
    • Docker
      • Docker Synopsis
      • docker.sock
    • Nightwatch
    • Jest
  • 算法/数学/架构
    • 设计模式
    • 架构设计经验分享
    • 前端架构
    • 基本数据结构
    • 函数式编程
  • 软件工程
    • 软件生命周期
Powered by GitBook
On this page
  • NODEJS
  • Node.js 的全局对象和全局变量
  • 全局对象
  • 全局函数
  • 全局变量
  • 准全局变量

Was this helpful?

  1. NodeJS

Node Global Obj And Var

NODEJS

Node.js 的全局对象和全局变量

全局对象

  1. global: 表示 Node 所在的全局环境,类似于浏览器中的 window 对象。

  2. process: 指向 Node 内置的 process模块,允许开发者与当前进程互动。(process.exit());

  3. console: 指向 Node 内置的 console 模块,提供命令行环境中的标准、标准输出环境。(console.log())

全局函数

  1. 定时器函数: setTimeout(), clearTimeout(), setInterval(), clearInterval().

  2. require: 用于加载模块。

全局变量

  1. __filename: 指向当前运行的脚本文件名。

  2. __dirname: 指向当前运行的脚本所在的目录。

准全局变量

模块内部的局部变量,指向的对象根据模块不同而不同,但是所有模块都适用,可以看作是伪全局变量,主要为 module, module.exports , exports 等。

module 变量指代当前模块。module.exports变量表示当前模块对外输出的接口,其他文件加载该模块,实际上就是读取module.exports变量。

  1. module.id 模块的识别符,通常是模块的文件名。

  2. module.filename 模块的文件名。

  3. module.loaded 返回一个布尔值,表示模块是否已经完成加载。

  4. module.parent 返回使用该模块的模块。

  5. module.children 返回一个数组,表示该模块要用到的其他模块。

这里需要特别指出的是,exports变量实际上是一个指向 module.exports 对象的链接,等同在每个模块头部,有一行这样的命令。

var exports = module.exports;

这造成的结果是,在对外输出模块接口时,可以向exports对象添加方法,但是不能直接将exports变量指向一个函数:

exports = function (x){ console.log(x);};

上面这样的写法是无效的,因为它切断了exports与module.exports之间的链接。但是,下面这样写是可以的。

exports.area = function (r) {  
  return Math.PI * r * r;  
};  

exports.circumference = function (r) {  
  return 2 * Math.PI * r;  
};
Previouschai.js 断言库NextCLI Writed By Nodejs

Last updated 5 years ago

Was this helpful?