Date.now() 在 PhoneGap 中返回 NaN

Posted

技术标签:

【中文标题】Date.now() 在 PhoneGap 中返回 NaN【英文标题】:Date.now() returning NaN in PhoneGap 【发布时间】:2013-01-26 18:32:48 【问题描述】:

我似乎无法在 phonegap 应用程序中获取时间戳。对 Date.now() 的简单调用,例如以下,结果为 NaN。

console.log("lastEditedOn: " + Date.now().toString() );

LogCat:

01-26 18:28:59.997: I/Web Console(17970): LastEditedOn: NaN:220

谁能看出我做错了什么?

干杯, 唐

【问题讨论】:

你试过先标注日期吗? 首先标注日期是什么意思? (抱歉,对 javascript 很陌生)。 var d = new Date() 然后d.now() 你不应该真的需要,我想,但它可能值得一试。 好的,通过以下方式设法得到它: var d = new Date(); var lastEditedOn; lastEditedOn = d.getTime(); 太棒了!应该发布这个作为答案! ;o) 【参考方案1】:

设法得到正确的时间戳:

var d = new Date();
var lastEditedOn;
lastEditedOn = d.getTime();
console.log(lastEditedOn);

干杯, 唐

【讨论】:

【参考方案2】:

您不能直接对 Date.now() 进行字符串化,因为它返回从 1970 年 1 月 1 日午夜开始的毫秒数。

你需要像这样转换它们:

function printDate() 
var temp = new Date();
var dateStr = padStr(temp.getFullYear()) +
              padStr(1 + temp.getMonth()) +
              padStr(temp.getDate()) +
              padStr(temp.getHours()) +
              padStr(temp.getMinutes()) +
              padStr(temp.getSeconds());
debug (dateStr );


function padStr(i) 
return (i < 10) ? "0" + i : "" + i;

【讨论】:

我要查找的是从 1970 年 1 月 1 日午夜开始的毫秒数。

以上是关于Date.now() 在 PhoneGap 中返回 NaN的主要内容,如果未能解决你的问题,请参考以下文章

使用 Oracle SQL Query 获得与使用 JS date.now() 方法相同的结果

Date.Now 如何格式化日期

如何在 Vue.js 中创建 Date(now) 以在计算属性中使用?

JS学习笔记——DateArray

passport.js 中的 Date.now 无法完成

请求API中添加?t=‘+Date.now()