【问题标题】:IE7 and IE8 JS support for Math.floor (or some other method?)IE7 和 IE8 JS 支持 Math.floor(或其他方法?)
【发布时间】:2011-09-24 23:06:02
【问题描述】:

我已经围绕这个主题研究了很长一段时间,但我无法找出导致我在 IE7 和 IE8 上出现问题的方法或代码 - 它在 IE9、Chrome 和 FF 中运行良好。使用IE9的F12工具调试,运行IE7或IE8模式时javascript停在这一行,报错object doesn't support this property or method

pmt = (Math.floor((princ*intRate)/(1-Math.pow(1+intRate,(-1*months)))*100)/100).toFixed(2);

脚本位于内联,而不是通过链接文件。

pmt 变量没有在此之前声明,它似乎指向变量作为问题。脚本会从之前声明的变量中受益吗?

提前致谢。

回答:

根据下面 Cory 的评论,问题不是由任何特定方法引起的,而只是我未能在 pmt 变量之前添加 var 声明。

现在全部排序 - 谢谢

【问题讨论】:

  • 插入一些换行符并在 IE8 中打开 IE 开发者工具 (F12)。您将更好地了解错误的实际位置。
  • 测试一下怎么样?看起来像 IE 中的一个错误。尝试将行拆分成多个语句进行调试。
  • 您的意思是“未声明”,因为您从未在 pmt 变量之前使用 var
  • 根据我的经验,“Math.foo()”方法在 IE 中都可以正常工作。
  • 为什么不创建一个自我回答呢?

标签: javascript internet-explorer-8 internet-explorer-7


【解决方案1】:

我认为这不是 math.floor 或 IE 的问题。看看这个小提琴:http://jsfiddle.net/4ULQL/2

可能是您传入了错误的参数,而表达式的计算结果不正确,因此出现错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多