node.js中global模块

global

、全局对象

global:JavaScript window是全局对象,而node.js中global是全局对象,但是window != global,window只是类似一个global的属性,除了global本身以外,其他的全局变量都是global对象的属性。定义在 global 上面的变量,不需要在模块中通过 exports 输出,其他模块中也能使用。

注意在使用时要谨慎处理,如果滥用则很可能引起变量污染。

 console:提供命令行环境中的标准输入,标准输出功能,console有两个特定的组件:

1) 一个 Console 类,包含 console.log() 、 console.error() 和 console.warn() 等方法,可以被用于写入到任何                             Node.js 流。console.error() 和 console.warn()作用相同。

2) 一个全局的 console 实例,可被用于写入到 process.stdout 和 process.stderr。 全局的 console 使用时无需调                           用 require('console')

 注意:全局的console根据环境来判断是同步还是异步

process:表示Node所处的当前进程,提供了当前Node.js进程的有关信息,允许开发者与该进程互动。

输出:process.stdout/process.stderr

输入:process.stdin

process.nextTick:相当于一个预约函数,在定时器那里有详细介绍

process.cwd(); //输出我们执行node命令所在的绝对路径,而__dirname是输出我们执行js文件所在的绝对路径

process.stdout:standard output 标准输出

process.stderr:standard error  标准错误输出

 console的输出方法实际上就是调用的process.stdout和process.stderr来完成的。

二、全局变量

1、_filename:指向当前运行的脚本文件名。

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

  按照 ECMAScript 的定义,满足以下条 件的变量是全局变量:

         1):在最外层定义的变量

         2):全局对象的属性

         3):隐式定义的变量(未定义直接赋值的变量)

 注意:在node.js中不可以在最外层定义变量,因为所有用户代码都是属于当前模块的,而模块本身不是最外层上下文。

三、全局函数:

定时器函数:共有4个,分别是setTimeout(), clearTimeout(), setInterval(), clearInterval()。

 1、setTimeout(cb, ms)

全局函数在指定的毫秒ms中只执行一次指定的函数cd

 测试代码1:    会在2s后执行test函数,并输出hello        

 function test(){

      console.log("hello");

 }

 setTimeout(test,2000);

测试代码2:   输出:0#,1#.................5#,666666,是因为js是单线程的,每次只能执行一条语句,就意味着会出现阻塞异步事件的发生,所以当异步发行时,定时器将会排在执行队列的最后等待执行,解决方法测试代码3所示:        

 for(var i= 0;i<6;i++){

     console.log(i)

     setTimeout( function(){

             console.log(i)
      },500);
        console.log("#")
 }

 测试代码3: 输出结果0===,1===,2===

for(var i = 0;i<3;i++){

    (function(i){

       var t = setTimeout(function(){

            console.log(i)

            console.log("===")

        },500)

    })(i);

}

2、clearTimeout(t)

用于停止1、 setTimeout(cb, ms)创建的定时器。通常是和setTimeout(cb, ms)成对使用,t是setTimeout(cb, ms)函数创建的定时器。

测试代码:输出为空,因为定时器已经被清除

function test(){

    console.log("hello");

}

var t = setTimeout(test,2000);

clearTimeout(t)

3、setInterval(cb, ms)

每隔ms时间就会执行一次cd函数,除非使用clearInterval() 来清除此计时器,否则会一直执行下去;clearInterval() 与setInterval()也是成对使用

测试代码:每隔两秒会输出一个hello,hello。。。。。。。。直到你按下 ctrl + c 按钮。

function test(){

    console.log("hello");

}

 setInterval( test,2000)

4、使用clearInterval()

测试代码:输出为空

function test(){
    console.log("hello");
}
var t = setInterval( test,2000)
clearInterval(t)

 

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLO高分设计资源源码,详情请查看资源内容使用说明 YOLO高分设计资源源码,详情请查看资源内容使用说明 YOLO高分设计资源源码,详情请查看资源内容使用说明 YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明YOLO高分设计资源源码,详情请查看资源内容使用说明

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值