location 在Javascript 中算是常用到的東西了。取得當前網址時會使用"alert(location); ",將當前分頁導向另一個網址時也會使用"location = 'http://www.google.com/'; "。
不過location 並不是一串字,在"alert(location); " 的語法中,瀏覽器自動將該劇解讀為"alert(location.toString()); ",因此會有種「location 就是一串字」的錯覺。
由於location 不是一串字,因此以字串為基礎的replace() 函式也是不可用的(似乎有同名函式存在於location 中,但可以肯定的是,該replace() 與字串的replace() 不會有相同的用法、相同的效果)。
]location = location.replace("http://", "https://"); //location.replace("http://", "https://") 會傳回空,瀏覽器可能只做重新整理的動作。
我們仍然可以把location 當作一串字來處理,不過我們必須先將location 轉成字串放在一個變數中,處理變數後,再將變數回傳給location。
]var test = location;
]location = test.replace("http://", "https://");
文章標籤
全站熱搜
