javascript / omniture - как очистить все свойства объекта (ов) - PullRequest
4 голосов
/ 08 октября 2011

Я использую omniture и отслеживаю различные свойства в переменной "s" для отслеживания.Приведенный ниже пример кода вызывает функцию s.clearVars () после каждого события отслеживания.Но я получаю сообщение о том, что clearVars не является допустимой функцией.Кто-нибудь знает, что я должен позвонить, чтобы очистить объект отслеживания?Или как удалить все свойства из объекта JavaScript.

Ответы [ 4 ]

12 голосов
/ 19 октября 2011

Не очищайте весь объект s, он содержит множество функций, которые прослушивают dom-события, и если вы очистите их, вы потеряете много функциональности.Я предполагаю, что вы просто хотите очистить все пользовательские переменные, которые вы вводите на странице (реквизиты, события, события, продукты и т. Д.).Функция s.clearVars - это «плагин», написанный Omniture consulting, который очищает все эти значения для вас.Вы можете связаться с менеджером своего аккаунта 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]]=''; 
  }
}

Обратите внимание, я не проверял код.Просто выстрелил из бедра.

4 голосов
/ 17 ноября 2012

Небольшая поправка к вектору.

Второй цикл for должен иметь значение i = 0, чтобы очистить переменную pageName.

Отличный сценарий V_FRog!

0 голосов
/ 07 ноября 2014

это сбросит весь объект в соответствии с вашим исходным запросом:

s=s_gi(s_account);
0 голосов
/ 08 октября 2011

Я думаю, что лучший ответ для того, как очистить свойства объекта JS, это просто создать новый объект все вместе.

Ознакомьтесь с этим постом: Как быстро очистить объект Javascript?

s = {};
...