所以我有一個問題,我試圖理清,而且我只在一年之內做了開發工作,所以對我來說事情還是很新的。我的目標是創建一個腳本,它能夠在url中找到utm值(如果存在),然後將它們存儲到變量中(如果存在)。我已經得到了一個腳本的工作,但如果該URL在一個非常特殊的方式構建它才能正常運行,高級網址查詢
本地主機/?utm_source =谷歌& utm_medium =中共中央& utm_campaign =(投資回報率)+ CDN +一般&的utm_content = CDN +(短語+%26 +寬峯)& utm_term = CDN &的gclid = CNaV2vnZl7wCFY57QgodbgwA7A
這可能是多種在實際生產中,例如URL的 - ?
本地主機/ utm_source =谷歌& utm_medium = CPC & utm_campaign =(ROI)+ CDN +一般 本地主機/ utm_source =谷歌& utm_medium = CPC & utm_campaign =(ROI)+ CDN +一般&的utm_content = CDN + (短語+%26 +寬)& utm_term = cdn
這是我放到一起的代碼。如果你對如何讓它在任何情況下都能更好地工作有什麼建議,或者任何你會推薦給「高級新手」的資源,我都會非常感激!
var urlSearch = window.location.search;
if (urlSearch.length > 1) {
if (urlSearch.match('utm_source=(.*)&utm_medium')) {
var utmSource = urlSearch.match('utm_source=(.*)&utm_medium')[1];
}
if (urlSearch.match('utm_medium=(.*)&utm_campaign')) {
var utmMedium = urlSearch.match('utm_medium=(.*)&utm_campaign')[1];
}
if (urlSearch.match('utm_campaign=(.*)&utm_content')) {
var utmCampaign = urlSearch.match('utm_campaign=(.*)&utm_content')[1];
}
if (urlSearch.match('utm_content=(.*)&utm_term')) {
var utmContent = urlSearch.match('utm_content=(.*)&utm_term')[1];
}
if (urlSearch.match('utm_term=(.*)&')) {
var utmTerm = urlSearch.match('utm_term=(.*)&')[1];
}
}
看看我寫的這篇文章。它會將查詢字符串中的所有變量完全解析爲一個JavaScript對象。 Stack Overflow上還有其他代碼示例。 http://www.htmlgoodies.com/beyond/javascript/article.php/11877_3755006_2/How-to-Use-a-JavaScript-Query-String-Parser.htm –