JS 中开始时间加小时数等于结束时间,怎么改这个代码?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 中开始时间加小时数等于结束时间,怎么改这个代码?相关的知识,希望对你有一定的参考价值。
开始时间加小时数等于结束时间, 求问题各位大神怎么改下下边的代码function count() var xiaoshishu=document.getElementById("xiaoshishu").value; var kaishi=document.getElementById("kaishi").value; var xiaoshishu = new Date(xiaoshishu.replace(/-/g, "/")); var kaishi = new Date(kaishi.replace(/-/g, "/")); var days = xiaoshishu.getTime() + kaishi.getTime(); var jieshu = parseInt(days / (1000 * 60 * 60 * 24)); document.getElementById("jieshu").value=jieshu;
1 小时数得保证是正整数,开始时间保证是合法的时间格式
2 代码
function count()var hours = document.getElementById("xiaoshishu").value;
var startDate = document.getElementById("kaishi").value;
hours = parseInt(hours);
startDate = new Date(startDate);
var newDate = new Date(startDate.setHours(startDate.getHours() + hours));
document.getElementById("jieshu").value = `$newDate.getFullYear()-$newDate.getMonth() + 1-$newDate.getDate() $newDate.getHours():$newDate.getMinutes()`;
count();追问
运行得不出来,最后边一句 好像有问题.
追答最后一句就是 Date 数据输出成 YYYY-MM-DD HH:mm 格式的时间。就相当于把时间序列化。html 中的小时数,需要有值,而且parseInt()之后得是number。
<input type="text" id="xiaoshishu" value="6"><input type="text" id="kaishi" value="2019-03-04 10:17">
<input type="text" id="jieshu" value="">
html里边添加这个,可以出来的。我可以给你做个demo,手动输入,再显示。
<input type="text" id="xiaoshishu" value=""><input type="text" id="kaishi" value="2019-03-04 10:17">
<input type="text" id="jieshu" value="">
<button id="button">点击</button>
<script>
function dates()
var hours = document.getElementById("xiaoshishu").value;
var startDate = document.getElementById("kaishi").value;
hours = parseInt(hours);
if (!hours)
alert('请输入正确的小时数');
document.getElementById("xiaoshishu").value = '';
return false;
startDate = new Date(startDate);
if (isNaN(startDate.getDate()))
alert('请输入正确的开始时间');
document.getElementById("jieshu").value = '';
return false;
var newDate = new Date(startDate.setHours(startDate.getHours() + hours));
document.getElementById("jieshu").value = `$newDate.getFullYear()-$newDate.getMonth() + 1-$newDate.getDate() $newDate.getHours():$newDate.getMinutes()`;
document.getElementById('button').onclick = dates;
</script>追问
最后一句做拆解可以用
追答`$newDate.getFullYear()-$newDate.getMonth() + 1-$newDate.getDate() $newDate.getHours():$newDate.getMinutes()`这一句么??怎么拆解呢??
let newDate = new Date();console.log(`$newDate.getFullYear()-$newDate.getMonth() + 1-$newDate.getDate() $newDate.getHours():$newDate.getMinutes()`)
每一个'$'中的内容都可以拿出来的呀。里边代码就是获取年月日的。
参考技术A 最简单的办法是,获取开始时间和小时数,然后都转化成时间戳运算,然后再把运算结果转换成你想要的格式展示出来 参考技术B 这个是要转化成时间戳的吧以上是关于JS 中开始时间加小时数等于结束时间,怎么改这个代码?的主要内容,如果未能解决你的问题,请参考以下文章
js 怎么计算 开始日期(2011-02-22)+天数(3)=结束日期(2011-02-24)