1

我在 JavaScript 中遇到了非常奇怪的错误。

var stamp = 1349102;
var obj = {a: stamp, b: new Date(stamp), c: new Date(1349102)};

当我查看obj-b无效日期但是c有效Date对象。

请帮我。我真的不知道如何解决这个问题。

4

1 回答 1

1

如果stamp由用户提供,则可以认为是字符串。在这种情况下,您的代码将被浏览器解释为以下代码(不起作用):

var stamp = "1349102";
var obj = {a: stamp, b: new Date(stamp), c: new Date(1349102)};

转换stamp数字就好了

var stamp = "1349102";
var obj = {a: stamp, b: new Date(Number(stamp)), c: new Date(1349102)};

查看控制台输出:第一个是没有Number转换,第二个是有Number转换。

JSON 控制台输出

于 2013-02-24T20:45:44.487 回答