javascript - 为什么使用循环中的“键”在for循环中创建一个新对象作为键返回?
问题描述
我一直在寻找 javascript 大约半年了,但我遇到了一些我有点困惑的东西。我以前没有这样做过,所以我不确定这里发生了什么。我正在尝试在另一个对象的 for 循环中创建一个新对象。当我创建名为 的新对象value
时,我希望我的键名与当前循环中的键名相同;但是,我得到的只是取回密钥,而如果我只是通过控制台将其注销,那么它就是我想要的密钥名称。这里发生了什么?我确信这背后有一个我还没有听说过的原因。
const testObj = (something => {
for (let key in something) {
let value = {key: something[key]};
console.log(key);
console.log(value);
}
})
let test = {'name': 'yomam', 'address': 'camelbak'};
console.log(testObj(test));
/*
name
{ key: 'yomam' }
address
{ key: 'camelbak' }
*/
解决方案
让值 = {[key]: something[key]};
这会将对象的键设置为循环的键
推荐阅读
- cakephp - Cakephp3:如何在 Json 中返回未转义的 URL
- javascript - 如何通过 javascript 将 Bootstrap 类添加到“按钮”元素?
- redis - Nestjs 和 GraphQL 的日期对象反序列化问题(使用微服务)
- arrays - 嘿,我最近学习了递归,我想知道为什么我的代码不能在 c 中工作
- windows-10 - 我正在尝试将 W7 Delphi10.4 升级到新的 W10 Pc 10.4.2 - 有问题
- r - R - 文件中的错误(con,“r”):无法打开与
- reactjs - 我正在尝试制作 CRUD,但无法发送
- pandas - 条形图对所有列使用 for 循环,而与数据类型无关
- sql - 加入与填充 | 抬头
- javascript - 获取 Json 值并使用 Javascript 创建数组