Home > Enterprise >  Converting arrays nested in array into object using forEch (does not work somehow?)
Converting arrays nested in array into object using forEch (does not work somehow?)

Time:04-11

I am having trouble with something i thought it will be simple.

I have an array of nested arrays with strings.

const cities = [['Vienna'],['Berlin'],['London'],['Oslo'],['New York']]

I must convert these nested arrays into objects. I think forEach method should suit perfectly along with Object.assign.

I written something like these:

function convert(element) {
    Object.assign({}, element)
  }
  const Test = cities.forEach(convert)

But then i am getting from console.log(Test) undefinded. Why so ? I am iterating through the whole array and each of her arrays should be assign as object. Whats missing ?

CodePudding user response:

Object should contain key: value pair

If you want to convert each string element into an object element. Then you can do something like this :

const cities = [['Vienna'],['Berlin'],['London'],['Oslo'],['New York']]

const res = cities.map((item) => {
    return {
    city: item[0]
  }
});

console.log(res);

  • Related