在JavaScript 中使用.trim():IE 中的挑戰
雖然.trim() 方法在JavaScript 中廣泛用於刪除前導以及字串尾隨空格,使用者在Internet Explorer (IE) 瀏覽器中使用它時可能會遇到問題。這個常見問題引發了以下問題:
問題:
在 Mozilla 下嘗試將 .trim() 應用於 JavaScript 中的字串時,它運行成功。然而,在 IE8 中使用相同的程式碼會導致錯誤。這種差異的解釋是什麼?是否有任何解決方案可以使 .trim() 與 IE 相容?
代碼摘錄:
var ID = document.getElementByID('rep_id').value.trim();
錯誤訊息:
Message: Object doesn't support this property or method Line: 604 Char: 2 Code: 0 URI: http://test.localhost/test.js
答案:
答案:if(typeof String.prototype.trim !== 'function') { String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ''); } }
IE 中出錯的原因是.trim() 方法不是內建函數在IE9 之前的IE 版本。要解決此問題並在 IE 中提供 .trim() 功能,您可以實現以下程式碼:此程式碼擴展了 String 原型以包含 .trim() 方法。它利用正規表示式來匹配和刪除前導和尾隨空格。透過將此程式碼新增至您的腳本中,.trim() 也可以在 IE 中無縫使用。
以上是為什麼 .trim() 在 Mozilla 中可以工作,但在 IE8 中會拋出錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!