/ / Javascript - Актуализиране на масив с подадени параметри - javascript, масиви, параметри

Javascript - Актуализиране на масива с пропуснати параметри - javascript, масиви, параметри

Имам един куп входни елементи, които извикват функция при кликване. Предават куп параметри с информация за това, което е кликнало.

Така:

onClick="updateCart("product_id", "product_name", "product_price");"

Сега искам да създам функция, която взема тези параметри и ги поставя в масив.

var updateCart = function (product_type, product_id, cost_model_id, product_name, subscription_campaign, startup_campaign) {
this.product_row = [];
};

Как да направя това?

Отговори:

1 за отговор № 1

Както каза, най-лесният начин ще бъде да се използва arguments променлива, която ще съдържа всички пропуснати параметри във формат, подобен на масив. Трябва да го преобразувате в масив както следва:

var updateCart = function() {
this.product_row = Array.prototype.slice.call(arguments);
// another way: this.product_row = [].slice.call(arguments);
};

1 за отговор № 2
var updateCart = function (product_type, product_id, cost_model_id, product_name, subscription_campaign, startup_campaign) {
this.product_row = [ product_type, product_id, cost_model_id, product_name, subscription_campaign, startup_campaign ];
};

Не е ли това, което търсите?

При извличане на информацията, която просто използвате:

this.product_row[0]; //returns product_type

Но ако имате нужда от нещо по-разбираемо, използвайте вместо това обект:

var updateCart = function (product_type, product_id, cost_model_id, product_name, subscription_campaign, startup_campaign) {
this.product_row = { "productType": product_type, "productID": product_id, "costModelID": cost_model_id, "productName": product_name, "subscriptionCampaign": subscription_campaign, "startupCampaign": startup_campaign };
};