2012-04-11 64 views
1

的JavaScript错误,我得到这个代码:iPad上

function zeroPad(num, places) { 
    var zero = places - num.toString().length + 1; 
    return Array(+(zero > 0 && zero)).join("0") + num; 
} 

result = "String begin ...." + zeroPad(o.m,2) + "Month" + ... + "String end ...."; 

和ON /系统正常工作的所有浏览器。它显示了诸如:
年06月26日09时

但在IPAD1与iOS 4.3.2的Safari它表明:
的NaN月NaN的天NaN的时间
(非数字)

这些苹果产品怎么了,错在哪里?

//编辑(对于DCoder):
这是生成整条线的代码,我不认为这有助于很多。

h = '<span class="f_normal"><span class="f_bold">' + zeroPad(o.m,2) + '</span> Month' + (o.m == 1 ? '': 's')+ ' <span class="f_bold">' + zeroPad(o.d,2) + '</span> Day' + (o.d == 1 ? '': 's') + ' <span class="f_bold">' + zeroPad(o.h, 2) + '</span> Hour' + (o.h == 1 ? '': 's') + '</span>'; 

我搜索的真正问题是这个错误只出现在iPad上?

+0

你也可以说实际上产生了“06月26日09时”行代码?您是否尝试过使用硬编码数据调用该函数(例如'zeroPad(5,2)'返回什么)?如果工作正常,那么你需要看看如何计算'o.m','o.h','o.d'。 – DCoder 2012-04-11 15:27:58

回答