目录
一、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