通过javascript将cookie中的数据发送到Google Analytics
有谁能帮我改进我制作的弗兰肯斯坦的javascript怪兽 我试图从cookie中检索特定数据,将其缝合在一起,然后作为用户Id发送到Google Analytics 我想,我所拥有的将会起作用,但可能是完全无效的,并且可能有大量冗余 cookiename的值为: 我想设置为用户Id的是:通过javascript将cookie中的数据发送到Google Analytics,javascript,cookies,google-analytics,Javascript,Cookies,Google Analytics,有谁能帮我改进我制作的弗兰肯斯坦的javascript怪兽 我试图从cookie中检索特定数据,将其缝合在一起,然后作为用户Id发送到Google Analytics 我想,我所拥有的将会起作用,但可能是完全无效的,并且可能有大量冗余 cookiename的值为: 我想设置为用户Id的是: 123.456 我所面临的挑战: 从特定cookie检索值 从字符串中删除转义字符和不必要的引号,这样我就可以实际使用JSON.parse()了 将1号和2号缝合在一起,中间有一个间隔 从函数返回该值 发
123.456
我所面临的挑战:
- 从特定cookie检索值
- 从字符串中删除转义字符和不必要的引号,这样我就可以实际使用JSON.parse()了
- 将1号和2号缝合在一起,中间有一个间隔
- 从函数返回该值
- 发送到谷歌分析
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
function idmaker() {
var cookievalue = decodeURI(getCookie("cookiename"));
var tidiedcookievalue = cookievalue.replace(/\\/g, "").slice(1, -1);
var parsedcookie = JSON.parse(tidiedcookievalue);
var UID = parsedcookie.number1 + "." + parsedcookie.number2;
return UID;
}
function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
}(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-12345678-9', 'auto');
ga('set', 'userId', idmaker());
ga('send', 'pageview');
函数getCookie(cname){
变量名称=cname+“=”;
var decodedCookie=decodeURIComponent(document.cookie);
var ca=decodedCookie.split(“;”);
对于(变量i=0;i
请毁灭我
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
function idmaker() {
var cookievalue = decodeURI(getCookie("cookiename"));
var tidiedcookievalue = cookievalue.replace(/\\/g, "").slice(1, -1);
var parsedcookie = JSON.parse(tidiedcookievalue);
var UID = parsedcookie.number1 + "." + parsedcookie.number2;
return UID;
}
function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
}(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-12345678-9', 'auto');
ga('set', 'userId', idmaker());
ga('send', 'pageview');