javascript - 使用名为 key1、key2 的键循环 req.body 值,
问题描述
我正在开发我的 Express 应用程序,但遇到了一个问题:我想创建一个对象数组,每个对象都有四个属性req.body
(通过带有POST
方法的表单提交)。现在,它们的名称是渐进式的,例如 image_1、image_2、image_3 等等。如何将这些值分配给循环中的键?
在下面的代码中可以看到,我想知道如何将索引值分配给值的名称(图片当然只是对问题的解释,我不能用方括号来做)。
const submitted_form = req.body;
const submitted_cards = [];
for (let i = 0; i<3; i++) {
submitted_cards[i] = {
image: submitted_form.image_[i],
title: submitted_form.title_[i],
abstract: submitted_form.abstract_[i],
link: submitted_form.link_[i],
}
}
所以,如果我有例如submitted_form
对象:
{ image_1: 'mountains.jpeg',
title_1: 'Mountains',
abstract_1: 'some random text',
link_1: 'www.google.com',
image_2: 'jungle.jpeg',
title_2: 'Jungle',
abstract_2: 'some other random text',
link_2: 'www.abc.com'
}
我想从循环中得到以下submitted_cards
数组:
[{ image: 'mountains.jpeg',
title: 'Mountains',
abstract: 'some random text',
link: 'www.google.com'
},{
image: 'jungle.jpeg',
title: 'Jungle',
abstract: 'some other random text',
link: 'www.abc.com'
}]
解决方案
改变这个
submitted_form.image_[i]
对此
submitted_form[`${key}_${i}`]
其中键将是图像、标题等前缀。
推荐阅读
- php - Laravel - 不从站点发送消息
- java - 尝试使用 java 将数据插入 PostgresSQL 表时,序列应用程序的权限被拒绝
- sql - 返回每个组具有最大值的行
- javascript - 在 JS 中格式化两个单独的字符串日期
- flutter - 来自提供者的空值,在颤振中热重载后返回数据
- sql-server - 多日期范围查询
- python - 尝试使用 copytree 在 Python 中递归地复制子文件夹
- reactjs - 边缘和 ie11 上的 Nextjs 'endsWith' polyfill 问题
- python - 如何向 Django 返回渲染调用添加多个字典列表?
- node.js - 使用 cookie-parser 和 nodejs 保存 cookie