преобразовать значение свойства объекта, используя Reduce? - PullRequest
0 голосов
/ 02 октября 2018
const ori = {
    "AL": "Alabama",
    "AK": "Alaska",
    "AS": "American Samoa"
}

Как мне объединить приведенный выше массив объектов в

{
    "AL": "+ Alabama",
    "AK": "+ Alaska",
    "AS": "+ American Samoa"
}

с помощью метода Reduce?

Я пытался

const r = Object.entries(ori).reduce((accum, [key, value], i) => {
    console.log(key)
    accum = {[key]: `+ ${value}`}

    return accum
},{})
console.log(r)

Я получил только последнюю итерациюзначение.

Ответы [ 2 ]

0 голосов
/ 02 октября 2018

преобразовать значение свойства объекта

Альтернатива для использования reduce

Попробуйте это:

const obj = {
  "AL": "Alabama",
  "AK": "Alaska",
  "AS": "American Samoa"
}
let clone = {}
for (var propt in obj) {
  clone[propt] = `+ ${obj[propt]}`
}
console.log(clone )
0 голосов
/ 02 октября 2018

Вам просто нужно использовать оператор ..., чтобы объединить текущее значение accum со следующей записью:

const ori = {
    "AL": "Alabama",
    "AK": "Alaska",
    "AS": "American Samoa"
}

const r = Object.entries(ori).reduce((accum, [key, value]) => {
    console.log(key)
    return {...accum, [key]: `+ ${value}`};
},{})
console.log(r)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...