node 执行 js 脚本
2023-02-15 本文已影响0人
cain07
1.脚本参数设置与获取
设置参数:运行文件空格之后添加参数,多个参数以空格间隔
node test.js 1920 1080 https://www.hao123.com
获取参数:process.argv
console.log('process.argv:',process.argv)
var arguments = process.argv.splice(2);
var params1 = arguments[0];
var params2 = arguments[1];
var params3 = arguments[2];
console.log('arguments:',arguments)
console.log('params1:', params1)
console.log('params2:', params2)
console.log('params3:', params3)
2.获取指定日期的前几天或后几天
// date 代表指定的日期,格式:2018-09-27
// day 传-1表始前一天,传1表始后一天
// JS获取指定日期的前一天,后一天
function getNextDate(date, day) {
var dd = new Date(date);
dd.setDate(dd.getDate() + day);
var y = dd.getFullYear();
var m = dd.getMonth() + 1 < 10 ? "0" + (dd.getMonth() + 1) : dd.getMonth() + 1;
var d = dd.getDate() < 10 ? "0" + dd.getDate() : dd.getDate();
return y + "-" + m + "-" + d;
};
getNextDate("2018-09-27",-1);
运行结果: 2018-09-26
3. js根据日期的方法获取当前这一周的周一(或者周日)
//获取当前日期周一
function getFirstDayOfWeek(date){
var day =date.getDay()||7;
return new Date(date.getFullYear(),date.getMonth(),date.getDate()+1-day);
};
//获取当前日期周日
function getLastDayOfWeek (date) {
var day = date.getDay() || 7;
return new Date(date.getFullYear(), date.getMonth(), date.getDate()+7 - day);
};
4. 日期格式化
Date.prototype.format = function(fmt) {
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"h+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
}
for (var k in o) {
if (new RegExp("(" + k + ")").test(fmt)) {
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k])
.length)));
}
}
return fmt;
}