首页 > 解决方案 > 如何更新我的 for 循环以输出我的参数 URL 键值对?

问题描述

我有一个代码块,它输出参数 URL 的查询字符串中找到的每个键值对。

我的问题是,我希望更新代码块,以便通过标准 utm 参数作为 analytics.track() 调用中的属性发送。附加要求是:

    var output = {};
    var qs = document.location.search.substring(1);
    qs = qs.split('&');

    for (var i = 0; i < qs.length; i++) {
        var tokens = qs[i].split('=');
      output[tokens[0].toLowerCase()] = tokens[1];
    }

    return output;
}

标签: javascriptanalytics

解决方案


2019 年末不需要所有这些字符串解析。有内置插件可以做这些事情。

let output = (new URL(document.location)).searchParams;
for (const [key, value] of output) {
  console.log(key, '=', value);
}

推荐阅读