JS中如何将yyyy-MM-dd HH:mm:ss格式的字符串转成Date类型

我用My97DatePicker<inputclass="Wdate"type="text"id="times"onblur="timeblur()"onclick="W... 我用My97DatePicker

<input class="Wdate"type="text" id="times" onblur="timeblur()"onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'})"/>

在JS中要实现 判断上面所选的时间要大于当前系统时间

应该是要用DateTime.Compare方法进行比较 吧

求大神帮忙写下JS如何实现上述要求 拜谢
展开
 我来答
幻翼高达Zero
2019-07-03 · TA获得超过1.7万个赞
知道答主
回答量:499
采纳率:0%
帮助的人:8.2万
展开全部

需要准备的材料分别有:电脑、html编辑器、浏览器。

1、首先,打开html编辑器,新建html文件,例如:index.html。

2、在index.html中的<script>标签,输入js代码:

var a = '2019-06-01 12:05:20';

var date = new Date(a.replace('-', '/'));

var now = new Date();

if (date.getTime() > now.getTime()) {

document.body.innerText = a + '大于当前系统时间';

} else {

document.body.innerText = a + '不大于当前系统时间';

}

3、浏览器运行index.html页面,此时会将yyyy-MM-dd HH:mm:ss格式的字符串转换为Date类型后和当前系统时间对比的结果打印出来。

198901245631
推荐于2017-09-26 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1738万
展开全部
直接通过以下工具方法实现即可,s就是要传入的日期,返回结果就是Date类型。

function StringToDate(s) {
alert("得到的日期字符串 : " + s);
alert(parseInt(s.substring(0,4),10));
alert(parseInt(s.substring(5,7)-1,10));
alert(parseInt(s.substring(8,10),10));
alert(parseInt(s.substring(11,13),10));
alert(parseInt(s.substring(14,16),10));
alert(parseInt(s.substring(17,19),10));

var d = new Date();
d.setYear(parseInt(s.substring(0,4),10));
d.setMonth(parseInt(s.substring(5,7)-1,10));
d.setDate(parseInt(s.substring(8,10),10));
d.setHours(parseInt(s.substring(11,13),10));
d.setMinutes(parseInt(s.substring(14,16),10));
d.setSeconds(parseInt(s.substring(17,19),10));

return d;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pieryon
2015-08-02 · 知道合伙人数码行家
pieryon
知道合伙人数码行家
采纳数:14410 获赞数:166869
获取软件设计师高级职称 万达金融最佳创新奖

向TA提问 私信TA
展开全部
js中,利用Date.parseDate(dateValue) 方法来转换日期:
function parseDate(str) {
if (typeof str == 'string') {
var results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}) *$/);
if (results && results.length > 3) return new Date(parseInt(results[1]), parseInt(results[2]) - 1, parseInt(results[3]));
results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}) +(\d{1,2}):(\d{1,2}):(\d{1,2}) *$/);
if (results && results.length > 6) return new Date(parseInt(results[1]), parseInt(results[2]) - 1, parseInt(results[3]), parseInt(results[4]), parseInt(results[5]), parseInt(results[6]));
results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}) +(\d{1,2}):(\d{1,2}):(\d{1,2})\.(\d{1,9}) *$/);
if (results && results.length > 7) return new Date(parseInt(results[1]), parseInt(results[2]) - 1, parseInt(results[3]), parseInt(results[4]), parseInt(results[5]), parseInt(results[6]), parseInt(results[7]));
}
return null;
}
var d = Date.parseDate("2015-08-02 12:13:15");
document.write(d + "\n");

输出一个JavaScript的Date类型。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
你以为你以为de
2015-07-07 · 知道合伙人软件行家
你以为你以为de
知道合伙人软件行家
采纳数:503 获赞数:1339
某培训机构毕业,大专学位。工作2年,喜欢百度知道答题,可以互相学习共通过进步。

向TA提问 私信TA
展开全部
1.var remindTime = "2008-04-02 10:08:44";
2.直接new Date(remindTime ) 即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wuxd7
2014-06-03 · TA获得超过323个赞
知道小有建树答主
回答量:452
采纳率:100%
帮助的人:286万
展开全部
如果只是单纯的比较时间,格式一样的可以直接用字符串比较,在js里面比较时间有点麻烦
追问
可以写下么 用String比较 当前时间也要转成String啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式