zoukankan      html  css  js  c++  java
  • 原生js时间获取,格式随意

    //获取日期 0为今天,负数为前几天,正数为后几天
    function getDay(day){
    	var today = new Date();
    	var targetday_milliseconds = today.getTime() + 1000*60*60*24*day;
    	today.setTime(targetday_milliseconds);
    	var tYear = today.getFullYear();
    	var tMonth = today.getMonth();
    	var tDay = today.getDate();
    	tMonth = doHandleZero(tMonth + 1);
    	tDay = doHandleZero(tDay);
    	return tYear + "-" + tMonth + "-" + tDay;
    }
    
    //获取当前时分秒时间
    function getNowTime(){
    	var date = new Date();
    	var hour = doHandleZero(date.getHours());
    	var minute = doHandleZero(date.getMinutes());
    	var second = doHandleZero(date.getSeconds());
    	return getDay(0) + ' ' + hour + ':' + minute + ':' + second;
    }
    
    //获取本周第一天
    function getFirstDayOfWeek() {
    	var date = new Date();
        var weekday = date.getDay()||7; //获取星期几,getDay()返回值是 0(周日) 到 6(周六) 之间的一个整数。0||7为7,即weekday的值为1-7
        date.setDate(date.getDate()-weekday+1);//往前算(weekday-1)天,年份、月份会自动变化
        var tYear = date.getFullYear();
    	var tMonth = date.getMonth();
    	var tDay = date.getDate();
    	tMonth = doHandleZero(tMonth + 1);
    	tDay = doHandleZero(tDay);
        return tYear + "-" + tMonth + "-" + tDay;
    }
    
    //获取本月第一天
    function getFirstDayOfMonth(){
    	var today = new Date();
    	var tYear = today.getFullYear();
    	var tMonth = today.getMonth();
    	tMonth = doHandleZero(tMonth + 1);
    	return tYear + "-" + tMonth + "-01";
    }
    
    //获取上个月第一天
    function getFirstDayOfLastMonth(){
    	var today = new Date();
    	var tYear = today.getFullYear();
    	var tMonth = today.getMonth();
    	tMonth = doHandleZero(tMonth);
    	return tYear + "-" + tMonth + "-01";
    }
    
    //获取上个月最后一天
    function getLastDayOfLastMonth(){
    	var today = new Date();
    	let lastMonthDay = new Date(today.getFullYear(), today.getMonth(), 0).getDate();	//获取月份最后一天
    	return today.getFullYear() + "-" + doHandleZero(today.getMonth()) + "-" + lastMonthDay;
    }
    
    //获取24小时之前的小时时间
    function get24HourAfter(){
    	var today = new Date();
    	var tYear = today.getFullYear();
    	var tMonth = today.getMonth();
    	var tDay = today.getDate();
    	var hour = doHandleZero(today.getHours());
    	tMonth = doHandleZero(tMonth + 1);
    	tDay = doHandleZero(tDay-1);
    	return tYear + "-" + tMonth + "-" + tDay + ' ' + hour + ":00:00";
    }
    
    //获取一小时之前的小时时间
    function getOneHourAgo(){
    	var today = new Date();
    	var tYear = today.getFullYear();
    	var tMonth = today.getMonth();
    	var tDay = today.getDate();
    	var hour = doHandleZero(today.getHours()-1);
    	tMonth = doHandleZero(tMonth + 1);
    	tDay = doHandleZero(tDay);
    	return tYear + "-" + tMonth + "-" + tDay + ' ' + hour + ":00:00";
    }
    
    //获取今天第一天
    function getFirstDayOfYear(){
    	var today = new Date();
    	var tYear = today.getFullYear();
    	return tYear + "-01-01";
    }
    
    //获取去年第一天
    function getFirstDayOfLastYear(){
    	var today = new Date();
    	var tYear = today.getFullYear();
    	return (tYear - 1) + "-01-01";
    }
    
    //获取两个日期之间相差的天数
    function getDaysForTwo(start, end){
    	var date1 = start + ' 00:00:00';  //开始时间
        var date2 = end?end:new Date();    //结束时间
        var date3 = date2.getTime() - new Date(date1).getTime();   //时间差的毫秒数      
        //var subMinutes = Math.floor( date3/(60*1000) ) //获取总共的分钟差
        //计算出相差天数
        var days = Math.floor(date3/(24*3600*1000))
        return days
    }
    
    //获取两个日期之间相差的小时数
    function getHoursForTwo(start, end){
    	var date1 = start;  //开始时间
        var date2 = end?end:new Date();    //结束时间
        var date3 = date2.getTime() - new Date(date1).getTime();   //时间差的毫秒数      
        var hours = Math.floor( date3/(3600*1000) ) //获取总共的分钟差
        //计算出相差天数
        //var days = Math.floor(date3/(24*3600*1000))
        return hours
    }
    
    //获取两个日期之间相差的分钟数
    function getMinutesForTwo(start, end){
    	var date1 = start;  //开始时间
        var date2 = end?end:new Date();    //结束时间
        var date3 = date2.getTime() - new Date(date1).getTime();   //时间差的毫秒数      
        var minutes = Math.floor( date3/(60*1000) ) //获取总共的分钟差
        return minutes
    }
    
    //日期格式转换 格林威治时间转yyyy-MM-dd HH:mm:ss
    function transferDate(date, format) {
        format = format || 'yyyy-MM-dd HH:mm:ss';
        date = new Date(date);
        date.setHours(date.getHours()-14);
        var o = {
            'M+' : date.getMonth() + 1, //month
            'd+' : date.getDate(), //day
            'H+' : date.getHours(), //hour
            'm+' : date.getMinutes(), //minute
            's+' : date.getSeconds(), //second
            'q+' : Math.floor((date.getMonth() + 3) / 3), //quarter
            'S' : date.getMilliseconds() //millisecond
        };
    
        if (/(y+)/.test(format))
            format = format.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
    
        for (var k in o)
            if (new RegExp('(' + k + ')').test(format))
                format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length));
    
        return format;
    }
    
    function doHandleZero(month){
    	var m = month;
    	if(month.toString().length == 1){
    		m = "0" + month;
    	}
    	return m;
    }
    
    function dateToString(date){ 
    	var year = date.getFullYear(); 
    	var month =(date.getMonth() + 1).toString(); 
    	var day = (date.getDate()).toString();  
    	if (month.length == 1) { 
    		month = "0" + month; 
    	} 
    	if (day.length == 1) { 
    		day = "0" + day; 
    	}
    	var dateTime = year + "-" + month + "-" + day;
    	return dateTime; 
    }
    
  • 相关阅读:
    用SQL实现的一个自动排课机制
    如何读懂复杂的C声明
    Mingw32配置
    test
    HttpSession API
    java程序逻辑控制
    方法的定义及使用
    memcached 安装及集成(转)
    cookie和session的的区别以及使用示例?
    构造方法和普通方法的区别?
  • 原文地址:https://www.cnblogs.com/chengyalin/p/11990059.html
Copyright © 2011-2022 走看看