需要ASP或Javascript函数来获取小时数

需要ASP或Javascript函数来获取小时数,javascript,asp-classic,vbscript,Javascript,Asp Classic,Vbscript,我需要一个函数从两个变量(日期+时间)中获取小时数 在ASP VBScript中,该函数将执行业务 result=DateDiff('h',a,b)在javascript中,使用UTC()函数。它将返回自1970年1月1日以来的毫秒数。获取to值之间的差值并转换为小时。javascript对象在内部将日期存储为整数,计算自1970年1月1日0:00以来的毫秒数 因此,将两个JS日期相加/相减将导致这两个日期之间的差异(以毫秒为单位)。当您知道一小时内有60*60*1000=360000毫秒时,将

我需要一个函数从两个变量(日期+时间)中获取小时数

在ASP VBScript中,该函数将执行业务

result=DateDiff('h',a,b)
在javascript中,使用UTC()函数。它将返回自1970年1月1日以来的毫秒数。获取to值之间的差值并转换为小时。

javascript对象在内部将日期存储为整数,计算自1970年1月1日0:00以来的毫秒数

因此,将两个JS日期相加/相减将导致这两个日期之间的差异(以毫秒为单位)。当您知道一小时内有60*60*1000=360000毫秒时,将其转换为小时是很容易的:

var a = new Date(old),
    b = new Date(newer),
    hoursBetween = (b - a) / 3600000;

这两个变量包含什么类型的数据?它们是日期对象、字符串还是其他什么?这很好,但如何在客户端调用它?你不能-ASP是服务器端的。您所能做的就是直接输出结果,例如
,或者作为AJAX调用的返回值。如果您想要100%的客户端,您可以使用javascript方法,我正在编写代码“dim m1,m2,m3 m1=request.Form(“outdate”)&&request.Form(“outtime”)m2=request.Form(“indate”)&&request.Form(“intime”)m3=DateDiff(“h”,m1,m2)但这会给出错误的数据类型mismatch@Dev在不知道
表单
集合中的真正内容的情况下,我无法告诉您,但您可以尝试使用
CDate()
函数dif()将
m1
m2
显式转换为
DateDiff
之前的日期{var fromDate=document.form1.outdate.value+document.form1.outtime.value;var toDate=document.form1.indate.value+document.form1.intime.value;var a=new Date(fromDate),b=new Date(toDate),hoursbwever=(a-b)/3600000;警报(hoursbwever);
var a = new Date(old),
    b = new Date(newer),
    hoursBetween = (b - a) / 3600000;