Problema

Por exemplo, o objeto da camada de dados da seguinte forma:

var dataLayer = window.dataLayer || [];
var dataLayer = [{
    'some':'thing',
    'products': [{
            'name': 'Gibson J-200',
            'tuning': 'High-G',
            'price': 449.75
        },{
            'name': 'Fender Stratocaster',
            'tuning': 'Drop-C',
            'price': 1699
    }],
    'stores': ['Los Angeles', 'New York'],
    'employee': {'name': 'Reggie'}
}];

Se você criar um Elemento de Dados no DTM usando notações de matriz como a figura a seguir, ele retornará o valor padrão configurado como "DLJSDefault" em vez do valor correto "Gibson J-200":

rtaImage_1

Ambiente

Ativação / Dynamic Tag Management

Causa

 Ao usar o tipo de Elemento de dados do objeto JavaScript, o Dynamic Tag Management não suporta notações de matriz.

Solução

Para usar notações de matriz, use um elemento de dados do tipo 'Custom Script':

rtaImage_2

Você pode usar o seguinte script para o cenário de exemplo:

return window.dataLayer["0"].products["0"].name;

Este script retorna o valor "Gibson J-200" da camada de dados do exemplo.