nodejs中的全局函數setTimeout/clearTimeout,setInterval/clearInterval,unref/ref


/*
* global的函數和方法
*1、setTimeout、clearTimeout 多長時間后執行函數(只執行一次)
*2、setInterval、clearInterval 每隔多少秒執行一次的計時器
*3、unref,ref 停止和啟動計時器(針對setInterval)
*/

//1、setTimeout、clearTimeout
// A.指定多長時間后執行函數和清楚函數
function timer(){
console.log("This is loading after 500S. ");
}
setTimeout(timer,500);

// B.可以給調用的函數傳參數(注:setTimeout可以給函數傳多個參數)
function sum1(str,num1,num2){
console.log(str+(num1+num2)+".");
}
//setTimeout函數后面的第一個數值是計算器的時間,之后的都是給函數傳的參數
setTimeout(sum1,1000,"The number of two and is equal to: ",5000,8000);

//C.清除計時
function timer1(num){
console.log("This is loading after "+num+"s.");
}
var cTimer= setTimeout(timer1,5000);
clearTimeout(cTimer);


//2、setInterval,clearInterval 每隔多少秒執行一次的計時器
function intervalF(num){
console.log("The time of setInterval load is "+num);
}
//每個1000S執行一次
var interval=setInterval(intervalF,1000,1000);
//第3000s是清除計時器
setTimeout(function(){
clearInterval(interval);
},3000);

//3、unref,ref 停止和啟動計時器
function intervalF1(num){
console.log("The time of setInterval load is "+num);
}
//每個1000S執行一次
var interval1=setInterval(intervalF1,1000,1000);

//A.unref 停止計時器,如:在3000s時停止計時器
setTimeout(function(){
interval1.unref();
console.log("3000s stop interval1 of setInterval.");
},3000);

//B.ref 啟動計時器,如:在1000s時啟動計時器
setTimeout(function(){
interval1.ref();
console.log("10000s start interval1 of setInterval.");
},10000);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM