Hi I am having an array like below and trying to push the item on map, but i am not able to push, Please tell what wrong i am doing here.
firstClassPrices: [
[
"Kan ej ombokas",
"431",
"SEK",
"Företagspris"
],
[
"Kan ombokas",
"525",
"SEK",
"Företagspris"
]
]
trying to push '1' like below:
let ticketi = firstClassPrices.map((price) => {
price.push("1");
});
i need o/p as
firstClassPrices: [
[
"Kan ej ombokas",
"431",
"SEK",
"Företagspris",
"1"
],
[
"Kan ombokas",
"525",
"SEK",
"Företagspris",
"1"
]
]
You have to return the price
const firstClassPrices = [
[
"Kan ej ombokas",
"431",
"SEK",
"Företagspris"
],
[
"Kan ombokas",
"525",
"SEK",
"Företagspris"
]
];
let ticketi = firstClassPrices.map((price) => {
// skip if price already includes 1
if (!price.includes("1")) {
price.push("1");
}
return price;
});
console.log(ticketi);
Your approach mutates the old array and maps undefined.
Instead, you could map the old and new content of the array.
This approach does not mutate the old data.
let ticketi = firstClassPrices.map(price => [...price, '1']);
You can use Array.prototype.map() combined with Array.prototype.concat()
Code:
const firstClassPrices = [["Kan ej ombokas","431","SEK","Företagspris"],["Kan ombokas","525","SEK","Företagspris"]]
const ticketi = firstClassPrices.map(p => p.concat('1'))
console.log(ticketi)