arrays - 如何在没有索引键的情况下推送 JSON 数组?
问题描述
我对JavaScript很陌生,需要创建一个带有多个键和值(推入变量)的JSONnewWord
,而不是将它们分开。问题是我不知道它的长度是多少(因为我正在使用 for 循环来推送每个键的名称和值):
let langName = document.querySelectorAll('.langName');
let langInput = document.querySelectorAll('.langInput');
let newWord = new Array()
for (let i = 0; i < langName.length; i++) {
let l = langName[i].value;
let w = langInput[i].value
newWord.push({[l]: w})
}
firebase.database().ref(`content/words/`).push(
newWord
)
所以,我现在的结果是:
虽然我想要的结果是:
有谁知道我如何摆脱索引 (0, 1) 并使用字符串值推送字符串键?
编辑:我希望 for 循环添加到此数组中的同一对象,而不是在其中创建一个新对象。
谢谢!
解决方案
push
用于在 firebase 数据库中插入列表。使用 set,您可以存储为键值对象。
let langName = document.querySelectorAll('.langName');
let langInput = document.querySelectorAll('.langInput');
let newWord = {};
for (let i = 0; i < langName.length; i++) {
let l = langName[i].value;
let w = langInput[i].value
newWord[l] = w;
}
firebase.database().ref(`content/words/`).set(
newWord
)
推荐阅读
- ansible - 谁能看到我在 ansible 剧本中做错了什么?
- shader - 你可以在opengl中混合着色器和非着色器代码吗?
- mysql - 创建存储过程以获取 SSMS 中日期维度表中的填充值
- java - org.apache.maven.InternalErrorException:内部错误:java.lang.IllegalArgumentException:MAC 的格式错误 \uxxxx 编码
- c++ - 查找对向量中的所有第一个元素
- node.js - FFMPEG:如何结合视频和图像(视频模板)
- python - 如何运行附加文本文件的while循环?
- asp.net - 登录后未从身份服务器生成 JWT 令牌
- sql - 使用 SQL/Presto/Athena,按 ID 合并记录,保持时间戳列顺序为最新
- c# - 从 Dns.GetHostAddresses 选择 ip 后 TCPClient 未连接