#javascript #google-tag-manager
#язык JavaScript #google-менеджер тегов
Вопрос:
Итак, я создал переменную «код javascript» в GTM и пытаюсь clientID
подключиться ga.getAll
, и у меня есть следующий код:
function foo() { var trackers = ga.getAll(); if (trackers.length gt; 0) { return trackers[0].get('trackingId') === 'UA-188398635-1' ? trackers[0].get('clientId') : 'nonon'; } }
Но он всегда возвращается undefined
, даже если я заставляю его возвращать строковую константу 'asdasd'
— наличия ga.getAll
в коде достаточно для function
разрыва. И самое непонятное — один и тот же код отлично работает в консоли отладки. Помогите, пожалуйста.
Ответ №1:
Поскольку foo
возвращает значение не определено, это означает, что trackers.length
оно равно 0. Попробуйте это:
function foo() { var trackers = ga.getAll(); if(trackers.length gt;0) { return trackers[0].get('trackingId') === 'UA-188082465-1' ? trackers[0].get('clientId') : 'nonon'; } else { return 'This is not undefined'; } }
Комментарии:
1. Нет, по-прежнему возвращает «неопределенный»
2. @Герман, в чем заключается ценность
trackers[0].get('clientId')
?3. Я не могу получить его, так как функция прерывается, как только я вызываю ga.getall
4. @Герман, в чем заключается ошибка, которую вы получаете?
5. В журнале нет ошибки, функция просто возвращает «не определено».