2011-09-24 179 views
1

我已經圍繞這個主題進行了相當長時間的研究,但是我找不出哪種方法或代碼會導致我使用IE7和IE8出現問題 - 它在IE9,Chrome和FF中運行良好。使用IE9的F12工具來調試的JavaScript在該行停止與運行IE7或IE8模式時,錯誤object doesn't support this property or methodIE7和IE8 JS支持Math.floor(或其他一些方法?)

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

該腳本位於內嵌,通過鏈接文件沒有。

pmt變量在此之前沒有聲明,它似乎指向變量作爲問題。腳本是否會從之前聲明的變量中受益?

在此先感謝。

答:

按照由下科裏的評論,這個問題不是由於任何特定的方法,而只是我的失敗到pmt變量之前添加var聲明。

現在所有分類 - 感謝

+0

放入一些換行符並在IE8中打開IE開發人員工具(F12)。您會更好地瞭解錯誤的實際位置。 –

+0

測試它怎麼樣?看起來像IE中的一個bug。嘗試將該行分成多個語句進行調試。 – Lekensteyn

+1

你的意思是「沒有聲明」,因爲你從不在'pmt'變量之前使用'var'嗎? –

回答

1

我不認爲它與math.floor或IE的問題就來看看這個小提琴:http://jsfiddle.net/4ULQL/2

可能是你傳遞了錯誤的參數和表達評估一些不正確的東西,從而導致錯誤。