Node的全局对象

目录

一、Node的全局对象

1、全局的,在任何Node模块中都可以使用而不需要引入

2、__filename

3、__dirname

4、setTimeout(fn,ms)

5、clearTimeout(t)

6、setInterval(cb, ms)

7、clearInterval(t)

8、process

9、exit事件


一、Node的全局对象

1、全局的,在任何Node模块中都可以使用而不需要引入

2、__filename

代表的是当前正在执行的代码的文件名(绝对路径+文件名)

console.log("文件名:",__filename)

3、__dirname

代表当前正在执行的代码的目录名(路径)

console.log("路径:",__dirname)

4、setTimeout(fn,ms)

定时器,表示至少间隔多少毫秒后执行回调函数

function printHello() {
    console.log("Hello World!");
}

let st = setTimeout(printHello,3000)

5、clearTimeout(t)

清除定时器,用来停止由setTimeout创建的定时器

function printHello() {
    console.log("Hello World!");
}

let st = setTimeout(printHello,3000)
clearTimeout(st);
//没有输出

6、setInterval(cb, ms)

定时器,表示至少间隔多个毫秒后重复执行定时器

function printHello() {
    console.log("Hello World!");
}

let st = setInterval(printHello,2000);
//会一直每隔两秒就打印一次Hello World

7、clearInterval(t)

清除由setInterval创建的定时器

function printHello() {
    console.log("Hello World!");
}

let st = setInterval(printHello,2000);
clearInterval(st)

//没有打印输出

8、process

包含了Node进程的全部信息(当前正在执行的代码的全部信息)

console.log("Pid:",process.pid)
console.log("操作系统:",process.platform)
console.log("Node版本:",process.version)
process.stdout.write("Hello World")

//    Pid: 9628
//    操作系统: win32
//    Node版本: v16.13.1
//    Hello World

"进程":就是程序的一次动态运行,就是动态运行的程序

(1)process.stdout:返回一个标准输出对象。该对象中有一个方法write,作用与console.log类似

(2)process.stdin:返回一个标准输入对象

process.stdout.write("请输入数据:")
process.stdin.on('data',(dt)=>{
    process.stdout.write("输入的数据是:"+dt.toString().trim())
    process.exit(0);//结束进程
})

(3)process.stderr:返回一个标准错误对象

process.stdout.write("请输入数据:")
process.stdin.on('data',(dt)=>{
    process.stdout.write("输入的数据是:"+dt.toString().trim())
    process.exit(0);//结束进程
})
process.stderr.write('标准错误')

(4)process.chdir():切换工作目录到指定的目录,作用类似于DOS的cd指令

(5)process.cwd():返回运行当前脚本的工作目录的路径

console.log("路径:",__dirname)
let d1 = process.chdir("D:/web/1.6课上/2022-1-6(node)/code/demo1")
console.log(d1)
let dir = process.cwd()
console.log(dir)

//    路径: D:\web\1.6课上\2022-1-6(node)\code\demo1\src
//    undefined
//    D:\web\1.6课上\2022-1-6(node)\code\demo1

(6)process.exit():退出当前进程

用来退出当前进程。它可以接受一个数值参数,如果参数大于0,表示执行失败;如果等于0表示执行成功。

if (err) {
  process.exit(1);
} else {
  process.exit(0);}

9、exit事件

当前进程退出时,会触发exit事件,可以对该事件指定回调函数

process.on('exit', function () {
  fs.writeFileSync('/tmp/myfile', '需要保存到硬盘的信息');
});
process.stdout.write("请输入数据:")
process.stdin.on('data',(dt)=>{
    process.stdout.write("输入的数据是:"+dt.toString().trim())
    process.exit(1123);//结束进程
})
process.on("exit", code =>
    console.log("exiting with code: " + code)
)

//    请输入数据:123
//    输入的数据是:123exiting with code: 1123

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值