Last updated on
16 May 2021
Issue
For example, data layer object as follows:
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'} }];
If you create a Data Element in DTM using array notations as the following figure, it returns default value configured as "DLJSDefault" instead of correct value "Gibson J-200":
Environment
Dynamic Tag Management/Activation
Cause
While using the JavaScript Object Data Element type, Dynamic Tag Management does not support array notations.
Resolution
To use array notations, use a Data Element of type 'Custom Script':
You can use the following script for the example scenario:
return window.dataLayer["0"].products["0"].name;
This script returns the value "Gibson J-200" from the example data layer.