2017-07-03 140 views
0

您好我有一个时间输入标签,当我点击一个按钮时,我需要从该输入标签中获取时间并将其转换为时间戳。这里是我的代码,如何将时间转换为js中的时间戳

HTML代码:

<input type="time" class="timein"/> 
<input type="button"class="convert_timestamp"/> 

JS代码

$('body').on("click",".convert_timestamp",function(){ 
var tm = $(".time").val(); 
var tmp = Date.now(tm); 
}); 

我们通常使用Date.now()当前时间戳。在这种情况下,如何通过发送自定义时间来获取时间戳。有人可以帮助我吗? 。提前致谢。

+0

是免费用户在每种格式中插入时间?在这种情况下,你应该区分每种情况,也许使用正则表达式... – decadenza

回答

2

var tmp = new Date(tm).getTime() // 1499072255507

例如:

new Date("2017/07/03") // Mon Jul 03 2017 00:00:00 GMT+0200 (W. Europe Daylight Time) 

new Date("2017/07/03").getTime() // 1499032800000 
0

假设字符串是正确的格式以下应工作

$('body').on("click",".convert_timestamp",function(){ 
    var tm = $(".time").val(); 
    var tmp = new Date(tm).getTime(); 
    }); 
+0

错误,你应该删除'new'关键字。 – YinchaoOnline

1

您可以创建一个新的日期与new

var d = new Date(tm); 

您也可以使用plus操作触发目标对象的valueOf得到时间戳:

var timestamp = +d; 
+0

哦,哇,'+ d'是一个优雅的捷径。我不知道。 +1 –

+0

“加号”运算符对于有关整数解析的所有内容都非常有用。 – Zenoo

0
$('body').on("click",".convert_timestamp",function(){ 
var tm = $(".time").val(); 
var tmp = new Date(tm).getTime(); 
// now tmp contain 2165465498764 
}); 
+1

虽然此代码片段可能会解决问题,但[包括解释](http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)确实有助于提高帖子的质量。请记住,您将来会为读者回答问题,而这些人可能不知道您的代码建议的原因。 –

1

试试这个,

$('.convert_timestamp').on("click",function(){ 
 
var tm = $(".timein").val(); 
 
var tmp = Date(tm); 
 
var only_time = Date.now(tm); 
 
console.log("time with date" ,tmp);  
 
console.log("only time", only_time); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
 
<input type="time" class="timein"/> 
 
<input type="button" value="gen Timestamp" class="convert_timestamp"/>

相关问题