我有一个日期作为字符串:
var mydate = "05/05/2011"
当我将此var传递给类似的函数时:
myfunction(mydate);
我提醒结果并得到小数而不是字符串日期:
function myfunction(mydate){
alert(mydate);
}
产生:
0.0004972650422675286
如何让它回到约会?
答案 0 :(得分:4)
这是数学表达式的结果:5 / 5 / 2011 = 4.972e-4
,确保引用字符串。
var x = 5/5/2011; //performs division
as opposed to
var x = "5/5/2011"; //creates a string
答案 1 :(得分:2)
我也有这个问题(我在弹出窗口中将字符串从代码隐藏传递到开启者的javascript)。我的解决方案很简单。
在asp.net中
<asp:Label ID="foo" runat="server"/>
在javascript中
foo.Text = "5/5/2011";
代码隐藏中的:
string runThis = "blahblah"
+ "'"
+ foo.Text
+ "';";
如果没有围绕文本的单引号,它会吐出十进制乱码(即2011年5月5日的数学结果)
我猜你的情况可以做到
alert("'" + myDate + "'");
答案 2 :(得分:0)
尝试使用以下语法:
var mydate = new Date("05/05/2011");
答案 3 :(得分:0)
答案 4 :(得分:0)
0.0004972650422675286是5 / 5 / 2011
(如分部)。
您可能在没有引用字符串的情况下键入日期,或者在将字符串传递给Date.parse
时将字符串传递给eval
。