2017-08-17 8 views
0

我有代碼來獲取已存儲在cookie中的GA參數,並將它們作爲輸入的值以不工作的形式輸入,並且我不能爲我的生活找出答案爲什麼。JavaScript object.key不工作

(function($) { 
    if (Cookies.get('gaParams')) { 
     var params = Cookies.get('gaParams'); 
    } 
    $('#source').val(params['utm_source'] ? params['utm_source'] : 'organic'); 
    $('#medium').val(params['utm_medium'] ? params['utm_medium'] : ''); 
    $('#campaign').val(params['utm_campaign'] ? params['utm_campaign'] : ''); 
    $('#keywords').val(params['utm_terms'] ? params['utm_terms'] : ''); 

    console.log(params,params['utm_medium'],params.utm_medium); 

}(jQuery)); 

你可以通過去here然後點擊「請求報價」按鈕來看到它的行動。
console.log將返回{"utm_medium":"testing","utm_source":"whatever"} undefined undefined

我不明白爲什麼調用對象鍵不會給我這樣的值。

+2

您是否在嘗試解析您的json數據? – Aayushi

回答

1

因爲變量params是字符串類型。您應該使用此方法JSON.parse()來解析JSON字符串

var params = Cookies.get('gaParams'); 
params = JSON.parse(params);