JavaScript Bug on iPad

JavaScript Bug on iPad

本文关键字:iPad on Bug JavaScript      更新时间:2023-09-26

我得到了这个代码:

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 ....";

在所有浏览器/系统上,它都可以正常工作。它显示以下内容:
06 个月 26 天 09 小时

但是在带有iOS 4.3.2和Safari的iPAD1上,它显示:
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上?!

听起来你需要将字符串转换为整数:

http://www.javascripter.net/faq/convert2.htm