从查询字符串中解析电子邮件

时间:2015-04-25 04:59:56

标签: javascript query-string analytics

我正在尝试创建一个JS,它将从url查询字符串中解析电子邮件地址。一旦完成,我希望它将结果发送给anaytics,以便在我需要使用它时使用。

所以基本上是abc.com?wemail=abc@abc.com

<script type="text/javascript">
/*Extracts email from query string using ?email=name@abc.com*/

function GetUrlValue(VarSearch) {
  var SearchString = window.location.search.substring(1);
  var VariableArray = SearchString.split('&');
  for (var i = 0; i < VariableArray.length; i++) {
    var KeyValuePair = VariableArray[i].split('=');
    if (KeyValuePair[0] == VarSearch) {
      return KeyValuePair[1];
    }
  }

anayltics正在接收数据,但@符号正被%40取代,并且它没有按照我想要的方式编码。

我确信这很简单,但需要做些哪些改动以确保其正常工作?

2 个答案:

答案 0 :(得分:0)

@符号最初在URL包含身份验证信息时使用:

user:pass@myurl.com

现代浏览器会将查询字符串中的@符号编码为%40。在发送到细分受众群之前,请使用decodeURIComponent()解码该值。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent

答案 1 :(得分:0)

您获得的%40符号是@符号的编码URL符号。 请参阅指向

用法的链接
  

javascript中的decodeURIComponent()函数

url decode function javascript

请查看此链接