转自:http://www.runoob.com/nodejs/nodejs-module-system.html

学习要点: 
- __filename 
- __dirname 
- setTimeout(cb, ms) 
- setInterval(cb, ms) 
- clearTimeout(t) 
- console 
- process

Node.js 全局对象 
Node.js中的全局对象时global,所有全局变量都是global对象的属性,在Node.js中我们可以直接访问到global的属性,不需要我们在应用中包含它。

全局对象和全局变量 
global最根本的作用是作为全局变量的宿主。 
而我们定义一个全局变量时,这个变量同时会变成全局对象global的属性。

__filename表示当前正在执行的脚本的文件名

console.log("文件所在的路径:" + __filename);

__dirname 表示当前执行脚本所在的目录

console.log("文件所在的目录:" + __dirname);

setTimeout(cb, ms) 延时器对象 
setInterval(cb, ms) 定时器对象 
clearTimeout(t) 清除延时器 
案例:main.js

console.log("文件所在的路径:" + __filename);
console.log("文件所在的目录:" + __dirname);
var printHello = function () {
console.log("Hello, World");
}
// 1s后调用函数
var t = setTimeout(printHello, 1000);
// 清除延时器
clearTimeout(t);

console 对象 
案例:console.js

console.info("程序开始执行:");
var counter = 10;
console.log("计数:%d", counter);
console.time("获取数据");
console.timeEnd("获取数据");
console.info("程序执行完毕");
// 当进程准备退出时触发
process.on('exit', function (code) {
// 以下代码永远不会执行
setTimeout(function () {
console.log("该代码不会执行");
}, 0);
console.log("退出代码:", code);
});
console.log("程序执行结束");

案例三:process.js

// 输出到终端
process.stdout.write("Hello World!" + "\n");
// 通过参数读取
// argv 属性返回一个数组,由命令行执行脚本时的各个参数组成。
// 它的第一个成员总是node,第二个成员是脚本文件名,其余成员是脚本文件的参数。
process.argv.forEach(function (val, index, array) {
console.log(index + ": " + val);
// 0: D:\nodeJS安装包\node.exe
// 1: E:\node\全局对象\process.js
});
// 获取执行路局
// D:\nodeJS安装包\node.exe
console.log(process.execPath);
// 平台信息
// wind32
console.log(process.platform);
// 输出当前目录
console.log("当前目录:" + process.cwd());
// 输出当前版本
console.log('当前版本:' + process.version);
// 输出内存使用情况
console.log(process.memoryUsage());

30.Node.js 全局对象的更多相关文章

  1. Node.js全局对象

    Node.js的全局对象是具有全局性的,它们可在所有的模块中应用.我们并不需要包括这些对象在应用中,而可以直接使用它们.这些对象的模块,函数,字符串和对象本身,如下所述. __filename __f ...

  2. Node.js 全局对象

    JavaScript 中有一个特殊的对象,称为全局对象(Global Object),它及其所有属性都可 以在程序的任何地方访问,即全局变量. 在浏览器JavaScript 中,通常window 是全 ...

  3. Node.js 全局对象介绍

    全局对象 这些对象在所有模块里都可用.有些对象不是在全局作用域而是在模块作用域里,这些情况下面文档都会标注出来. global {Object} 全局命名空间对象. 浏览器里,全局作用域就是顶级域.如 ...

  4. 13、Node.js 全局对象

    主要用于调试,显示信息,重点看例子在浏览器 JavaScript 中,通常 window 是全局对象, Node.js 中的全局对象是 global ####__filename__filename ...

  5. JS全局对象的属性

    全局对象是最顶层的对象,在浏览器环境指的是window对象.在ES5中,全局对象的属性与全局变量是等价的. var str = "hello"; function test(){ ...

  6. 解决linux下node.js全局模块找不到的情况

    今天在在linux上用npm安装了pm2准备部署node项目,结果通过pm2命令启动项目的时候报pm2找不到,这很伤,以为pm2没有安装成功,但是在node安装目录下面的bin文件夹里面调用pm2却没 ...

  7. Node.js自定义对象事件监听与发射

    一.Node.js是以事件驱动的,那我们自定义的一些js对象就需要能监听事件以及发射事件.在Node.js中事件使用一个EventEmitter对象发出,该对象在events模块中.它应该是使用观察者 ...

  8. 查看node.js全局安装的插件路径

    查看 npm  全局插件 默认全局安装路径 参考:https://www.jianshu.com/p/f2873fcef5aa 首先 nodejs安装好之后,默认情况下会有如下配置 npm confi ...

  9. js基础学习之-js全局对象

    声明的三种方式: 第一种: var test; //或var test = 5; 第二种: test = 5; 第三种: window.test; //或window.test = 5; //只是使用 ...

随机推荐

  1. Mysql 锁表 for update (引擎/事务)

    因为之前用过oracle,知道利用select * for update 可以锁表.所以很自然就想到在mysql中能不能适应for update来锁表呢. 学习参考如下 由于InnoDB预设是Row- ...

  2. ubuntu中开启、关闭防火墙

    1.关闭ubuntu的防火墙        ufw disable 开启防火墙 ufw enable 2.卸载了iptables        apt-get remove iptables 3.关闭 ...

  3. C++11之decltype

    使用场景 在C++中常常要用到非常长的变量名.假设已经有变量和你将使用的变量是一个类型.就可以使用decltypekeyword 来申明一样的类型变量. decltype原理      返回现有变量类 ...

  4. 利用photoshop的动作功能实现图片批处理操作

    首先,通过"窗体菜单"点击"动作".启动动作栏. 然后.通过动作栏的菜单,新建动作. 接着,完毕一个标准操作,包含打开图像,图像处理或者格式转换,另存为,等. ...

  5. java 处理word文档 (含图片,表格内容)

    因为本人长期从事Oa相关项目的开发,所以处理word文档,Pdf,Excel等是在所难免的. 1.需求      处理Excel 能够用jxl        或者poi 2需求     用户在系统上填 ...

  6. Asp.Net碎知识

    在aspx页面 获取值: UserModel user=new UserModel();实例化 user.Address=context["txtAddress"]; 如果前台不需 ...

  7. 图论:Tarjan算法

    在有向图中,若两点至少包含一条路径可以到达,则称两个顶点强连通,若任意两个顶点皆如此,则称此图为强联通图.非强连通图有向图的极大强连通子图,称为强连通分量(strongly connected com ...

  8. 变量对象、作用域链和This

    变量对象 作用域链 This 整理自:https://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html 系列文章中变量对象,作用域链和this ...

  9. webpack4强势来袭

    # Webpack4## 安装> webpack 4默认不需要配置文件(它吸收了Parcel的思想,零配置)> - npm i -D webpack> - npm i -D webp ...

  10. 【Henu ACM Round#18 B】Modulo Sum

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] m比较小 <=1000 a[i]直接看成a[i]%m就可以了. 有n个0..999之间的整数.. 如果有一个0那么就直接输出Y ...