Как подтолкнуть динамическую цену на слой данных?
Как я могу отправить динамическую цену, которая должна измениться, для уровня данных? я не могу просто отправить переменную, как в примере ниже?
Var price; //this price will dynamically change based on the product value
dataLayer.push({
'event': 'gtm-event',
'value': price
});
1 ответ
Не уверен насчет google-datalayer, но примитивы в Javascript передаются по значению, а объекты по ссылке. Итак, рассмотрим
var price = 3;
var object_with_price = { price: 3 };
var data_with_price = { value: price };
var data_with_object = { value: object_with_price };
Если вы сейчас измените price
до 4, data_with_price.price
будет все еще 3, потому что значение было передано.
Но если вы делаете object_with_price.price = 4
, затем data_with_object.value.price
также будет 4.
Если вы измените object_with_price = { price: 5 }
, data_with_object
останется без изменений.