我有以下代碼JavaScript的真正奇怪的行爲
if (msg.position == 0)
//removed for brevity
else if (msg.position == txtArea.value.length)
//removed for brevity
else {
//ERROR: should not reach here.
errorDivTag.innerHTML += msg.position + " " + txtArea.value.length;
}
我在那裏,我發現了錯誤,在過去的代碼塊中的一些很奇怪的情況,但印刷位置顯示msg.position
其實等於txtArea.value.length
。這隻發生在1%的時間內,就好像我的代碼中存在某種競爭條件,在第二條if語句中這兩個條件不相等,但在打印錯誤消息時卻是相等的。
任何想法?
什麼是'msg.position'(在這些罕見的情況下)?特別是,記錄'typeof'它。 – Bergi 2012-09-30 19:47:22