zoukankan      html  css  js  c++  java
  • js时间比较大小,计算相差天数,加上n天,动态显示当前时间

    1、指定时间加上days天

    function computationDate(date, days) {
      var d = new Date(date);
      d.setDate(d.getDate() + days); //如果加月就是d.getMonth(); 以此类推
      var m = d.getMonth() + 1;//字符串拼接会拼上1,不是+1
      return d.getFullYear() + '-' + m + '-' + d.getDate() + " " + d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds(); //返回格式 2016-4-27 13:18:00 (可根据自己需要自行设定返回内容)
    }

    注意:如果增加天数会改变月份或者年份,那么日期对象会自动完成这种转换。

    2、日期比较

    var BIgger = 2020-05-29,17:29:30

    var Smaller= 2020-05-25,17:29:30

    var Big = new Date(BIgger.replace(/-/g, "/"))  // var Big = new Date(BIgger)也可以

    var Small = new Date(Smaller.replace(/-/g, "/"))

    if(BIgger !=""&&Smaller !="" &&Big >Small){

      alert("bigger是大的")

    }

    3、计算相差多少天

    var differ = Big.getTime() - Small .getTime()

    var differrence = Math.floor(long/(1000*60*60*24)) // 向下取整,没管正负哦~~

     

    4、动态显示当前时间

        function timeShow(){
            var timeTemp = new Date();
            //使用toLocaleTimeString()方法生成时间格式
            var nowTime = timeTemp.toLocaleTimeString();
            var timeDiv = document.getElementById("showTime");
            timeDiv.innerHTML = nowTime;
        }
        window.setInterval(timeShow, 1000);
    function timeShow(){
        //获取当前时间
            var timeTemp = new Date();
            
        //提取当前时间的时分秒,注意小于10时的时间格式
            var hour = timeTemp.getHours();
            if(hour < 10){
                hour = "0" + hour;
            }
            var minute = timeTemp.getMinutes();
            if(minute < 10){
                minute = "0" + minute;
            }
            var second = timeTemp.getSeconds();
            if(second < 10){
                second = "0" + second;
            }
        //将提取的时分秒按照自己的想法进行拼接
            var nowTime = hour + ":" + minute + ":" + second;
        //通过id获取时间显示的对象引用
            var timeDiv = document.getElementById("showTime");
        //将拼接的字符串赋值给该id标签的HTML
            timeDiv.innerHTML = nowTime;
        }
        //每过1000毫秒执行一次该方法
        window.setInterval(timeShow, 1000);

     5

    // 对Date的扩展,将 Date 转化为指定格式的String
    // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
    // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
    // 例子:
    // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
    // (new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18

    //兼容IE必须为    new Date(TimeStamp.substring(0,19).replace(/-/ig,"/")).format("yyyy-MM-dd hh:mm:ss");

    Date.prototype.format = function(fmt) { //author: meizz   
    	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;
    }
    

    6、倒计时

    function toLocaleString(jmjzsj) {

    //jmjzsj = 1614134280000
    //获取服务器时间
    var nowDate=new Date($.ajax({async:false}).getResponseHeader('Date'));
    var endDate = new Date(jmjzsj); //endDate = Wed Feb 24 2021 10:38:00 GMT+0800
    var totalSeconds = parseInt((endDate - nowDate) / 1000);
    var days = Math.floor(totalSeconds / (60 * 60 * 24));
    var modulo = totalSeconds % (60 * 60 * 24);
    var hours = Math.floor(modulo / (60 * 60));
    modulo = modulo % (60 * 60);
    var minutes = Math.floor(modulo / 60);
    var seconds = modulo % 60;
    if (totalSeconds > 0) {
    $('#_now_data').text(hours + ":" + minutes + ":" + seconds);
    } else if (totalSeconds < 0) {
    $('#_now_data').text("00:00:00");
    // clearInterval(intervalId);
    }
    setTimeout(function () {
    toLocaleString(jmjzsj);
    timestamp++;
    }, 1000);
    }

  • 相关阅读:
    Android 调用已安装市场,进行软件评分的功能实现
    二十六个月Android学习工作总结
    Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1) 错误 解决方案(android-ndk)
    【Android】神奇的android:clipChildren属性
    Android利用setLayoutParams在代码中调整布局(Margin和居中)
    android 使用代码实现 RelativeLayout布局
    Android 布局学习
    Erlang cowboy 处理不规范的client
    HTTP 响应
    把字符串转换为整数
  • 原文地址:https://www.cnblogs.com/Esther-yan/p/12988776.html
Copyright © 2011-2022 走看看