我最近遇到了一些JavaScript問題,它違背了我的編程背景的每個骨骼。 Javascript經常對我這樣做,所以我沒有那麼驚訝。Javascript如何處理函數參數
我有一個功能,因爲這樣...
function x(param1, booleanParam, arrayParam){
....
}
我得到一個運行時錯誤說arrayParam.length
沒有定義。在調試時,我看到這是真的,並去找出原因。原來我曾在我的函數調用這樣被遺忘的一個逗號......
x(param1, true [arrayJunk]);
我有是找出爲什麼這個電話是在所有提出的問題?爲什麼這不是一個編譯錯誤,Javascript如何看待這個問題並思考:「是的,這看起來可能有用!」
在此先感謝您分享的任何啓示!
這種情況下,使用「Array」構造函數而不是文字語法會提供一個有用的SyntaxError,但是您可能會遇到傳遞單個數字參數導致不同靜默錯誤的潛在問題。 – 2012-06-04 16:55:48