Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将JSON日期字符串与javascript字符串进行比较?_Javascript_Date - Fatal编程技术网

如何将JSON日期字符串与javascript字符串进行比较?

如何将JSON日期字符串与javascript字符串进行比较?,javascript,date,Javascript,Date,我试图比较两个时间值,我在jS中创建了一个新的日期变量,然后将其传递给JSON中的Memberstack(这很有效)。然后,我在页面重新加载时调用数据,并从Memberstack中提取值,以比较第一次加载和第二次加载之间的日期 这是我的代码: // Run timer. // function runTimer() { MemberStack.onReady.then(async function(member) { var metadata = await member.getMet

我试图比较两个时间值,我在jS中创建了一个新的日期变量,然后将其传递给JSON中的Memberstack(这很有效)。然后,我在页面重新加载时调用数据,并从Memberstack中提取值,以比较第一次加载和第二次加载之间的日期

这是我的代码:

// Run timer. //
function runTimer() {
  
MemberStack.onReady.then(async function(member) {
  var metadata = await member.getMetaData() // <------ call the initial date value from Memberstack
  if (metadata.startDate != null) {
    var initiatedDate = metadata["startDate"]; // <------ the initial date value
    var referenceDate = currentDate; // <------ the second date value to compare to
    var calcDifference = referenceDate.getTime() - initiatedDate.getTime(); // <------ errors here
    var calcDifferenceD = calcDifference / (1000 * 3600 * 24); 
    alert(calcDifference);
    }
})

}
// End run timer. //
我需要使第81行和第82行匹配,以便比较它们,有人能帮我比较这两个日期吗?

是您问题的答案。 您的
initialedDate
不是对象,而是字符串,因此
.getTime
不存在。因此,您应该将字符串转换为日期对象

这就是你可以做到的:

var initiatedDate = new Date(metadata['startDate'])
然后您的initiatedDate将使用
.getTime
方法,并且不会出现错误。

是您问题的答案。 您的
initialedDate
不是对象,而是字符串,因此
.getTime
不存在。因此,您应该将字符串转换为日期对象

这就是你可以做到的:

var initiatedDate = new Date(metadata['startDate'])

然后您的initiatedDate将具有
.getTime
方法,不会出现错误。

因为initialDate是一个字符串,您需要将其转换为Date对象,我更喜欢使用矩.js处理dates@Nonik我可以使用:
var obj=JSON.parse('{'}')用于此?如果是,正确的语法是什么?JSON日期字符串是什么意思?我认为引用是一个日期对象。您还需要将另一个字符串转换为日期对象,并尝试新日期(initiatedDate);但是,在处理日期时,我更喜欢使用moment.js。这是否回答了您的问题?因为initialDate是一个字符串,所以需要将其转换为Date对象,在处理dates@Nonik我可以使用:
var obj=JSON.parse('{'}')用于此?如果是,正确的语法是什么?JSON日期字符串是什么意思?我认为引用是一个日期对象。您还需要将另一个字符串转换为日期对象,并尝试新日期(initiatedDate);但是,在处理日期时,我更喜欢使用moment.js。这是否回答了您的问题?