【发布时间】: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