簡體   English   中英

javascript / omniture - 如何清除對象的所有屬性(s對象)

[英]javascript / omniture - how to clear all properties of an object (s object)

我正在使用omniture並跟蹤各種屬性到“s”變量進行跟蹤。 我跟隨的示例代碼在每個跟蹤事件之后調用一個名為s.clearVars()的函數。 但我得到一個錯誤,說clearVars不是一個有效的函數。 有誰知道我應該打電話來清除跟蹤對象? 或者如何從javascript對象中清除所有屬性。

不要清除整個s對象,它包含許多正在監聽dom事件的函數,如果你清除它們,你將失去很多功能。 我猜你只想清除你在頁面上填充的所有自定義變量(道具,回憶,事件,產品等)。 s.clearVars函數是Omniture咨詢所寫的“插件”,它為您清除所有這些值。 您可以聯系您的Omniture客戶經理並詢問他代碼,他可能會或可能不會給您,具體取決於他是否想要向您出售一些咨詢時間,或者他是否知道您在談論什么,或者您可以這樣做你自己用幾個簡單的循環:

function ClearVars(){
  for (var i=0; i < 75; i++) {
    s['prop'+i]='';
    s['eVar'+i]='';
    if(i<=5)
      s['hier'+i]='';
   }
   svarArr = ['pageName','channel','products','events','campaign','purchaseID','state','zip','server','linkName'];
  for (var i=0; i < svarArr.length ; i++) {
     s[svarArr[i]]=''; 
  }
}

請注意我沒有測試過代碼。 剛剛從臀部拍攝。

矢量青蛙(驚人)代碼的小修正。

第二個for循環需要i = 0來清除pageName變量。

偉大的腳本V_FRog!

這將根據您的原始請求重置整個對象:

s=s_gi(s_account);

我認為如何清除JS對象的屬性的最佳答案是只創建一個新對象。

看看這篇文章: 如何快速清除Javascript對象?

s = {};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM