HongCoder
HongCoder

Reputation: 73

How can new objects be placed in an array as values?

Now I'm trying to add photos in my app.

For example, if there is one picture, the key is img_no_1, and the value is getting through the backend.

if can put up to 10 pictures, how can make img_no + number(The number of images.) according to the number of pictures?

I want to make a Array like imageList.

If there are five pictures,

const image_no = [145, 331, 392, 2, 39];
const imageList = [];


--------------------------------------------------------
imageList = [{
             img_no_1: 145,
             img_no_2: 331,
             img_no_3: 392,
             img_no_4: 2,
             img_no_5: 39
     }];

Thanks for your attention.

Upvotes: 0

Views: 42

Answers (1)

evolutionxbox
evolutionxbox

Reputation: 4122

Here is a very naive example using map and then Object.fromEntries:

  1. use map to return an array of array values in the shape ["key", "value"]
  2. Convert this array of arrays into an object using Object.fromEntries

const image_no = [145, 331, 392, 2, 39];
const imageList = [Object.fromEntries(
  image_no.map((num, i) => [
    `img_no_${i+1}`,
    num
  ])
)];

console.log(imageList)

If image_no is an array of image numbers:

const image_nos = [
  [145, 331, 392, 2, 39],
  [145, 331, 392, 2, 39]
];
const imageList = image_nos.map(image_no => Object.fromEntries(
  image_no.map((num, i) => [
    `img_no_${i+1}`,
    num
  ])
));

console.log(imageList)

Upvotes: 2

Related Questions