整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

JS的时间操作long转成字符串显示

JS的时间操作long转成字符串显示

面效果:


关键代码:

function dateShowByLong(dateTimeValue) {
	if (dateTimeValue==null ||
		dateTimeValue=="" ||
		dateTimeValue==undefined) {
		return "";
	}
	let dateV=new Date();
	dateV.setTime(dateTimeValue);
	let result=dateFormat(dateV, "yyyy-MM-dd hh:mm:ss");
	return result;
}

function dateFormat(date, fmt) {
	// 时间格式化输出 //
	// date:时间值 //
	// fmt:格式化方式:如:yyyy-MM-dd //
	let o={
		"M+": date.getMonth() + 1, //月份
		"d+": date.getDate(), //日
		"h+": date.getHours(), //小时
		"m+": date.getMinutes(), //分
		"s+": date.getSeconds(), //秒
		"q+": Math.floor((date.getMonth() + 3) / 3), //季度
		"S": date.getMilliseconds() //毫秒
	};
	if (/(y+)/.test(fmt))
		fmt=fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));

	for (let 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;
}

在线验证链接:

「链接」

完整代码(可忽略不看):

为new Date().toLocaleString() 在安卓和ios上的格式不一致,所以尽量自己写format

生成一个时间数组

作为一个简单的举例,我序列化一周的时间对象

声明参数

let lastMonth=[]
let daylong=86400000

判断时间值是否小于9

const formatNumber=num=> {
 num=parseInt(num)
 if (num>9) {
 return num
 } else {
 return '0'+num
 }
}

格式化时间

const formatTime=(time)=> {
 let date=new Date(time)
 var year=date.getFullYear()
 var month=date.getMonth() + 1
 var day=date.getDate()
 return {
 value: year+'-'+formatNumber(month) + '-' + formatNumber(day),
 date: month + '月' + day +'日',
 year: year+'年',
 select: false
 }
}

循环

for(var i=1;i<15;i++){
 let time=new Date().getTime() + (i+1) * daylong
 let date=formatTime(time)
 lastMonth.push(date)
}

输出如下:

如果只需要格式化时间

function formatTime(time) {
 var date=new Date(time)
 var year=date.getFullYear()
 var month=date.getMonth() + 1
 var day=date.getDate()
 
 var hour=date.getHours()
 var minute=date.getMinutes()
 var second=date.getSeconds()
 
 return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
}

输出:2019/05/27 14:00:30

、获取日期时间

//获取日期+时间
DateTime.Now.ToString();          
// 2021-11-6 17:02:10

DateTime.Now.ToLocalTime().ToString();      
// 2021-11-6 17:12:12
          
//获取日期
DateTime.Now.ToLongDateString().ToString();  
// 2021年11月6日
            
DateTime.Now.ToShortDateString().ToString(); 
// 2021-11-6
            
DateTime.Now.ToString("yyyy-MM-dd");      
// 2021-11-06
            
DateTime.Now.Date.ToString();          
// 2021-11-6 0:00:00
           
//获取时间
DateTime.Now.ToLongTimeString().ToString();   
// 17:12:11
           
DateTime.Now.ToShortTimeString().ToString();  
// 17:12
            
DateTime.Now.ToString("hh:mm:ss");       
// 17:12:22
            
DateTime.Now.TimeOfDay.ToString();      
// 17:20:00.1211100

二、获取年月日

DateTime.Now.Year.ToString();      
// 获取年份  // 2021

DateTime.Now.Month.ToString();   
// 获取月份   // 11      

DateTime.Now.DayOfWeek.ToString(); 
//获取星期   // Thursday         

DateTime.Now.DayOfYear.ToString(); 
//获取第几天   // 248

DateTime.Now.Hour.ToString();      
//   获取小时   // 20
            
DateTime.Now.Minute.ToString();   
// 获取分钟   // 31
           
DateTime.Now.Second.ToString();    
// 获取秒数   // 45

三、获取前面或者后面的日期