2012-04-11 67 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

回答