JavaScript Object データ要素型は、配列を含むオブジェクトの値を返信しません

問題点

例えば、データレイヤーは次のようになります。

var dataLayer = window.dataLayer || [];
var dataLayer = [{
    'foo':'bar',
    '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'}
}];

次の図として配列表記法を使用して DTM でデータ要素を作成する場合は、「正しい値 Gibson J-200」ではなく、「DLJSDefault」として設定されたデフォルト値を返します。

環境

Dynamic Tag Management/Activation

原因

 JavaScript オブジェクトのデータエレメント型を使用している場合、動的タグ管理は配列の表記をサポートしません。

解決策

配列表記を使用するには、「カスタムスクリプト」タイプのデータ要素を使用します。

例シナリオでは、次のスクリプトを使用できます。

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

このスクリプトは例えのデーターレイヤーから「Gibson J-200」を返します。

 Adobe

ヘルプをすばやく簡単に入手

新規ユーザーの場合

Adobe MAX 2025

Adobe MAX Japan
クリエイターの祭典

2025 年 2 月 13 日
東京ビッグサイト