JS 时间运算大全

作者推荐

效果

开始时间:2021-1-1 12:10:10结束时间:2021-2-1 13:13:13时间差的毫秒数:2682183000计算出-相差天数:31计算出-小时数:1计算出-分钟数:3计算出-秒数 :3计算结果 : 相差 31天 1小时 3 分钟3 秒

html

<h1>作者推荐</h1>    <div>开始时间:<span id="hot_ks"></span></div>    <div>结束时间:<span id="hot_js"></span></div>    <div>时间差的毫秒数:<span id="hot_sjc"></span></div>    <div>计算出-相差天数:<span id="hot_xcts"></span></div>    <div>计算出-小时数:<span id="hot_xss"></span></div>    <div>计算出-分钟数:<span id="hot_fzs"></span></div>    <div>计算出-秒数 :<span id="hot_ms"></span></div>    <div>计算结果 :<span id="hot_jg"></span></div>

js-调用

//作者推荐      var Hot=function(){           var ks='2021-1-1 12:10:10';          var js='2021-2-1 13:13:13';          let data=TimeDifference(ks,js);            $("#hot_ks").html(ks);            $("#hot_js").html(js);            $("#hot_sjc").html(data.Milliseconds);            $("#hot_xcts").html(data.days.days);            $("#hot_xss").html(data.days.hours);            $("#hot_fzs").html(data.days.minutes);            $("#hot_ms").html(data.days.seconds);            $("#hot_jg").html(" 相差 "   data.days.days   "天 "   data.days.hours   "小时 "   data.days.minutes   " 分钟"   data.days.seconds   " 秒");      };       Hot();

js-公共函数

//作者推荐        function TimeDifference(d1, d2) {              var date1 = new Date(d1);   //开始时间              var date2 = new Date(d2);    //结束时间              var Milliseconds = date2.getTime() - new Date(date1).getTime();   //时间差的毫秒数                    //------------------------------              //计算出相差天数              var days = Math.floor(Milliseconds / (24 * 3600 * 1000))            //计算出小时数               var leave1 = Milliseconds % (24 * 3600 * 1000)    //计算天数后剩余的毫秒数              var hours = Math.floor(leave1 / (3600 * 1000))            //计算相差分钟数              var leave2 = leave1 % (3600 * 1000)        //计算小时数后剩余的毫秒数              var minutes = Math.floor(leave2 / (60 * 1000))            //计算相差秒数              var leave3 = leave2 % (60 * 1000)      //计算分钟数后剩余的毫秒数              var seconds = Math.round(leave3 / 1000)            var ResultJson = {                days: {                    days: days >= 0 ? days : days   1,                    hours: hours >= 0 ? hours: hours   1,                    minutes: minutes >= 0 ? minutes : minutes   1,                    seconds: seconds >= 0 ? seconds: seconds   1                },                Milliseconds: Milliseconds            };             return ResultJson;        }

测试源码

注意引入jq

效果

代码

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>JS 时间运算</title>    <script src="jquery.min.js"></script></head><body>    <h1>作者推荐</h1>    <div>开始时间:<span id="hot_ks"></span></div>    <div>结束时间:<span id="hot_js"></span></div>    <div>时间差的毫秒数:<span id="hot_sjc"></span></div>    <div>计算出-相差天数:<span id="hot_xcts"></span></div>    <div>计算出-小时数:<span id="hot_xss"></span></div>    <div>计算出-分钟数:<span id="hot_fzs"></span></div>    <div>计算出-秒数 :<span id="hot_ms"></span></div>    <div>计算结果 :<span id="hot_jg"></span></div>    <hr>    <h1>JS 时间运算--天数运算--演示1</h1>    <p style="color: #ccc;">转载:https://my.oschina.net/u/3913672/blog/2878194</p>    <div>付款时间:<input type="text" name="fukuan" id="fukuan" value="2020-01-11"></div>    <div>冲账期限(天):<input type="text" name="chongzhang" id="chongzhang" value="1"></div>    <div>延期天数:<input type="text" name="yanqi" id="yanqi">(*修改-然后按下 enter 键触发运算)</div>    <div>计算结果的日期:<span id="jieguo_span"></span></div>    <hr>    <h1>JS 时间运算--天数运算--演示2</h1>    <div>开始日期:<input type="text" name="kaishi" id="kaishi" value="2020-01-10"></div>    <div>提前提醒天数:<input type="text" name="tixing" id="tixing" value="10"></div>    <div>执行日期:<span id="zhixingshijian"></span></div>    <div><input type="button" id="jisuan" value="执行计算"></div>    <hr>    <h1>Js计算时间差(天、小时、分钟、秒)--演示3</h1>    <p style="color: #ccc;">转载:https://www.cnblogs.com/chenlove/p/8643036.html</p>    <div>开始时间:<span id="demo3_kaishi"></span></div>    <div>结束时间:<span id="demo3_jieshu"></span></div>    <div>时间差的毫秒数:<span id="demo3_sjc"></span></div>    <div>计算出-相差天数:<span id="demo3_xcts"></span></div>    <div>计算出-小时数:<span id="demo3_xss"></span></div>    <div>计算出-分钟数:<span id="demo3_fzs"></span></div>    <div>计算出-秒数 :<span id="demo3_ms"></span></div>    <div>计算结果 :<span id="demo3_jg"></span></div>    <hr>    <h1>演示4</h1>    <h3>日期减去/加上天数等于第二个日期--演示4.1</h3>    <p style="color: #ccc;">转载:https://blog.csdn.net/sat472291519/article/details/18077005</p>    <div>开始时间:<span id="demo4_ks"></span></div>    <div>天数:<span id="demo4_ts"></span></div>    <div>减去结果:<span id="demo4_jg1"></span></div>    <div>加上结果:<span id="demo4_jg11"></span></div>    <h3>两个日期的差值(d1 - d2)--演示4.2</h3>    <p style="color: #ccc;">转载:https://blog.csdn.net/sat472291519/article/details/18077005</p>    <div>开始时间:<span id="demo4_kssj"></span></div>    <div>结束时间:<span id="demo4_jssj"></span></div>    <div>结果:<span id="demo4_jg2"></span></div>    <div>结果:<span id="demo4_jg22"></span></div>    <script type="text/javascript">        //例子1        $('#yanqi').change(function () {            console.log('修改触发运算');            var beginTimeVal = $('#fukuan').val();//获取页面中的付款时间,格式为2017-01-11类型             days = $("#chongzhang").val().trim();//获取页面中的冲账期限(天)val()            days1 = $("#yanqi").val();//获取页面中的延期天数            console.log('付款时间:'   beginTimeVal);            console.log('冲账期限(天):'   days);            console.log('延期天数:'   days1);            daysInt = parseInt(days)   parseInt(days1);//强制转换为int类型【不转换不会报错但是时间不准确】            var val = addDate(beginTimeVal, daysInt);//调用已经封装好的函数addDate $('#nextTime').val(val); })            $("#jieguo_span").html(val);        });        //例子2        $('#jisuan').click(function () {            var kaishi = $('#kaishi').val();            var tixing = $('#tixing').val();            daysInt = parseInt(tixing);//强制转换为int类型【不转换不会报错但是时间不准确】            var val = addDate(kaishi, daysInt);            $("#zhixingshijian").html(val);        });        //例子3         var demo3 = function () {            var date1 = '2020/12/01 00:00:00';  //开始时间              var date2 = new Date();    //结束时间              var date3 = date2.getTime() - new Date(date1).getTime();   //时间差的毫秒数                    //------------------------------              //计算出相差天数              var days = Math.floor(date3 / (24 * 3600 * 1000))            //计算出小时数               var leave1 = date3 % (24 * 3600 * 1000)    //计算天数后剩余的毫秒数              var hours = Math.floor(leave1 / (3600 * 1000))            //计算相差分钟数              var leave2 = leave1 % (3600 * 1000)        //计算小时数后剩余的毫秒数              var minutes = Math.floor(leave2 / (60 * 1000))            //计算相差秒数              var leave3 = leave2 % (60 * 1000)      //计算分钟数后剩余的毫秒数              var seconds = Math.round(leave3 / 1000)            $("#demo3_kaishi").html(date1);            $("#demo3_jieshu").html(date2.toLocaleString());//将一个日期按照本地操作系统格式显示            $("#demo3_sjc").html(date3);            $("#demo3_xcts").html(days);            $("#demo3_xss").html(hours);            $("#demo3_fzs").html(minutes);            $("#demo3_ms").html(seconds);            $("#demo3_jg").html(" 相差 "   days   "天 "   hours   "小时 "   minutes   " 分钟"   seconds   " 秒");        };        demo3();        ///计算函数        //日期加减法  date参数为计算开始的日期,days为需要加的天数           //格式:addDate('2017-1-11',20)        function addDate(date, days) {            var d = new Date(date);            //核心就是setDate()方法, date参数是要进行加减的日期,days参数是要加减的天数,如果往前算就传入负数,往后算就传入正数 ,注意js中的月份是0-11月,计算的时候要加1            d.setDate(d.getDate()   days);            var m = d.getMonth()   1;            return d.getFullYear()   '-'   m   '-'   d.getDate();        }        /        //例子4         var demo4 = function () {            //例子4.1            var ks = new Date();            var ts = 10;            $("#demo4_ks").html(ks.toLocaleString()); //将一个日期按照本地操作系统格式显示            $("#demo4_ts").html(ts);            $("#demo4_jg1").html(demo4_MinusDays(ks, ts));            $("#demo4_jg11").html(demo4_AddDays(ks, ts));            //例子4.2            var demo4_kssj = '2021-1-1';//开始            var demo4_jssj = '2021-10-1';//结束            $("#demo4_kssj").html(demo4_kssj); //将一个日期按照本地操作系统格式显示            $("#demo4_jssj").html(demo4_jssj);            $("#demo4_jg2").html(demo4_DateDiff(demo4_jssj, demo4_kssj));        };        demo4();        //日期减去天数后的新日期.        function demo4_MinusDays(dd, dadd) {            //可以加上错误处理            var a = new Date(dd);            a = a.valueOf();            a = a - dadd * 24 * 60 * 60 * 1000;            a = new Date(a);            return a.getFullYear()   "-"   (a.getMonth()   1)   "-"   a.getDate();        }        //日期加上天数后的新日期.        function demo4_AddDays(date, days) {            var nd = new Date(date);            nd = nd.valueOf();            nd = nd   days * 24 * 60 * 60 * 1000;            nd = new Date(nd);            //alert(nd.getFullYear()   "年"   (nd.getMonth()   1)   "月"   nd.getDate()   "日");            var y = nd.getFullYear();            var m = nd.getMonth()   1;            var d = nd.getDate();            if (m <= 9) m = "0"   m;            if (d <= 9) d = "0"   d;            var cdate = y   "-"   m   "-"   d;            return cdate;        }        // 这里不得不做补充,浪费好多时间得出教训:        // Javascript 对时间的代号         // 0-11数字表示1-12月: var a= new Date(2006,5,6) 结果是2006-6-6        // 0-6表示星期        // 1-31表示日期        // 0-23小时        // 0-59分钟,秒        //两个日期的差值(d1 - d2).        function demo4_DateDiff(d1, d2) {            var day = 24 * 60 * 60 * 1000;            try {                var dateArr = d1.split("-");                var checkDate = new Date();                checkDate.setFullYear(dateArr[0], dateArr[1] - 1, dateArr[2]);                var checkTime = checkDate.getTime();                var dateArr2 = d2.split("-");                var checkDate2 = new Date();                checkDate2.setFullYear(dateArr2[0], dateArr2[1] - 1, dateArr2[2]);                var checkTime2 = checkDate2.getTime();                var cha = (checkTime - checkTime2) / day;                return cha;            } catch (e) {                return false;            }        }//end fun        //作者推荐      var Hot=function(){           var ks='2021-1-1 12:10:10';          var js='2021-2-1 13:13:13';          let data=TimeDifference(ks,js);            $("#hot_ks").html(ks);            $("#hot_js").html(js);            $("#hot_sjc").html(data.Milliseconds);            $("#hot_xcts").html(data.days.days);            $("#hot_xss").html(data.days.hours);            $("#hot_fzs").html(data.days.minutes);            $("#hot_ms").html(data.days.seconds);            $("#hot_jg").html(" 相差 "   data.days.days   "天 "   data.days.hours   "小时 "   data.days.minutes   " 分钟"   data.days.seconds   " 秒");      };       Hot();        //作者推荐        function TimeDifference(d1, d2) {              var date1 = new Date(d1);   //开始时间              var date2 = new Date(d2);    //结束时间              var Milliseconds = date2.getTime() - new Date(date1).getTime();   //时间差的毫秒数                    //------------------------------              //计算出相差天数              var days = Math.floor(Milliseconds / (24 * 3600 * 1000))            //计算出小时数               var leave1 = Milliseconds % (24 * 3600 * 1000)    //计算天数后剩余的毫秒数              var hours = Math.floor(leave1 / (3600 * 1000))            //计算相差分钟数              var leave2 = leave1 % (3600 * 1000)        //计算小时数后剩余的毫秒数              var minutes = Math.floor(leave2 / (60 * 1000))            //计算相差秒数              var leave3 = leave2 % (60 * 1000)      //计算分钟数后剩余的毫秒数              var seconds = Math.round(leave3 / 1000)            var ResultJson = {                days: {                    days: days >= 0 ? days : days   1,                    hours: hours >= 0 ? hours: hours   1,                    minutes: minutes >= 0 ? minutes : minutes   1,                    seconds: seconds >= 0 ? seconds: seconds   1                },                Milliseconds: Milliseconds            };             return ResultJson;        }    </script></body></html>

来源:https://www.icode9.com/content-4-831701.html

(0)

相关推荐

  • Vue基础(五):常用特性(一)

    Vue基础(五):常用特性(一)

  • express+socket.io实现一个简易聊天窗

    首先是node代码: const express = require('express') const bodyParser = require('body-parser') const app = ...

  • js使用转义符技巧输出HTML

    在工作中有时候我们需要使用js输出html代码,这通常会涉及一些标签.变量.  对于很长的html代码,为了让js具有较好的可读性,就需要在js里对html代码进行一定的拆分.拼接. 一般我们会这样写 ...

  • 收藏,日常必备的JS工具函数大全

    Vue中文社区 昨天 来源:https://github.com/Wscats/CV/issues/27 为元素添加on方法 .. ..;.. (event, fn) {. [][].(this, ( ...

  • ORACLE日期时间函数大全

    TO_DATE格式(以时间:2007-11-02   13:45:25为例)            Year:              yy two digits 两位年               ...

  • 精选的珍惜时间名言大全

    珍惜时间名言 1.在今天和明天之间,有一段很长的时间:趁你还有精神的时候,学习迅速办事.--歌德 2.每一点滴的进展都是缓慢而艰巨的,一个人一次只能着手解决一项有限的目标.--贝弗里奇 3.生命是短暂 ...

  • 《民法典》时间法条大全

    文丨朱晓东 民法上的时间隐喻着人的生命.生命是在自由的基础上以执着和遗忘组成的. 取得权利靠自由,保存权利靠执着.只有执着于自己的权利的人,才值得法律保护其权利.珍惜和看重自己权利的人,绝不会放任权利 ...

  • js 时间控件 日期多选

    在开发的过程中,时间总是不可避免要出现的需求,这里给大家分享我比较常用的js 时间控件和一个问题的解决方法 layDate 官方文档地址:https://www.layui.com/laydate/ ...

  • 经典珍惜时间谚语大全80句

    光阴似箭催人老,日月如梭赶少年,我们都要好好的珍惜时间呀,用在有用的地方.这里给大家分享一下关于珍惜时间的谚语,希望对大家有所帮助, 关于珍惜时间的谚语1 三更灯火五更鸡,正是男儿读书时. 年过中秋月 ...

  • 四柱八字五十五条看你人生健康生命时间信息大全

    四柱八字五十五条看你人生健康生命时间信息大全

  • 北师大版五年级上册简便运算大全

    一.[加法交换律和结合律] 1.加法交换律:两个数相加,交换加数的位置,和不变.用字母表示为:a b=b a. 2.加法结合律:三个数相加,先把前两个数相加,再和第三个数相加,或者先把后两个数相加,再 ...

  • JS常用语句大全(共72条)(更新中。。。)

    JS常用语句大全(共72条)(更新中...) 非常好的js语句汇总,适合初学者复习和梳理所学的知识: 1.document.write()不换行的输出,document.writeln()换行输出 2 ...