Array.map () и Array.forEach () возвращают исходный массив - PullRequest
0 голосов
/ 04 мая 2020
app.post('/test', (req, res) => {
    let grid = req.body.dayGrid

    grid.map(week => {
        week.map(day => {
            return day+'!'
        })
    })

    res.json(grid)
})

Почему этот код возвращает исходный массив без добавленного '!'?

То же самое происходит с Array.forEach ()

Ответы [ 2 ]

3 голосов
/ 04 мая 2020

Поскольку map не заменяет оригинальный объект, он возвращает новый.

app.post('/test', (req, res) => {
    let grid = req.body.dayGrid

    grid = grid.map(week => week.map(day => day+'!'))

    res.json(grid)
})
0 голосов
/ 04 мая 2020

Вы возвращаете исходный массив сетки из тела запроса. Попробуйте это

app.post('/test', (req, res) => {
    let grid = req.body.dayGrid

     const result = grid.map(week => {
        return week.map(day => {
            return day+'!'
        })
    })

    res.json(result)
})

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...