安装
npm install node-schedule
# 或
yarn add node-schedule
使用(second、minute
、hour
、
date
、dayOfWeek
、month
、year)
每分钟第1秒执行一次
const schedule = require("node-schedule");
var rule = new schedule.RecurrenceRule(); rule.second = 1; // 秒 schedule.scheduleJob(rule, () => { console.log(new Date()) })
每10秒执行一次
const schedule = require('node-schedule'); // 定义规则 let rule = new schedule.RecurrenceRule(); rule.second = [0, 10, 20, 30, 40, 50]; // 每隔 10 秒执行一次 // 启动任务 let job = schedule.scheduleJob(rule, () => { console.log(new Date()); });
每小时的第30分执行一次
rule.minute = 30;
rule.second = 0;
每天0点执行一次
rule.hour =0; rule.minute =0; rule.second =0;
每月1号10点执行一次
rule.date = 1; rule.hour = 10; rule.minute = 0; rule.second = 0;
每周一、三、五的0点和12点各执行一次
rule.dayOfWeek = [1,3,5]; rule.hour = [0,12]; rule.minute = 0; rule.second = 0;
配置
* * * * * * ┬ ┬ ┬ ┬ ┬ ┬ │ │ │ │ │ | │ │ │ │ │ └ 星期几,取值:0 - 7,其中 0 和 7 都表示是周日 │ │ │ │ └─── 月份,取值:1 - 12 │ │ │ └────── 日期,取值:1 - 31 │ │ └───────── 时,取值:0 - 23 │ └──────────── 分,取值:0 - 59 └─────────────── 秒,取值:0 - 59(可选)
取消循环
job.cancel();