遍历对象的JavaScript
我刚开始使用Firebase,在遍历数据库对象(即JSON)时遇到了问题 下面是一个示例数据遍历对象的JavaScript,javascript,reactjs,firebase,firebase-realtime-database,Javascript,Reactjs,Firebase,Firebase Realtime Database,我刚开始使用Firebase,在遍历数据库对象(即JSON)时遇到了问题 下面是一个示例数据 const _ = require ('underscore'); var data ={ "posts": { "-JRHTHaIs-jNPLXOQivY": { "author": "gracehop", "title": "Announcing COBOL, a New Programming Language" }, "-JRHTHaKuITF
const _ = require ('underscore');
var data ={
"posts": {
"-JRHTHaIs-jNPLXOQivY": {
"author": "gracehop",
"title": "Announcing COBOL, a New Programming Language"
},
"-JRHTHaKuITFIhnj02kE": {
"author": "alanisawesome",
"title": "The Turing Machine"
}
}
}
我试图在表格中显示它,例如:
return <table>
<tr>
<td>author</td>
<td>title</td>
</tr>
{data.map(k=>{
return <tr key={k}>
<td>{k.author}</td>
<td>{k.title}</td>
</tr>
}).bind(this)}
</table>
代码起作用了。但是,Object.map似乎不适用于文本值
我想知道遍历这些数据的最佳方法。我曾尝试使用下划线的mapObject特性forEach,但很难找到合适的文档来迭代这些数据。任何对此表示赞赏的建议都将受到高度赞赏。
map
是一种数组方法;你拥有的是一个物体。您可以使用Object.values(data)
以数组的形式获取对象的值,这样您就可以执行Object.values(data).map
如果由于浏览器兼容性问题而无法使用
Object.values
,则还可以使用Object.keys(数据)
获取一组键。然后,您可以执行map
来检索每个值,比如Object.keys(data).map(key=>data[key])
,最终得到所需的值数组。是否使用某种HTML预处理器?这不是你声明一个
@4castle的方式,我怀疑他在使用React,这是Javascript代码在JSX中转义的方式。它不是转义的-\ux-你可以用任何词来描述它,我的意思是你可以停止编写XML,重新开始编写Javascript。实际上,我在使用React,我只是复制了一些相关的代码片段。
const _ = require ('underscore');
var data ={
0: {
"-JRHTHaIs-jNPLXOQivY": {
"author": "gracehop",
"title": "Announcing COBOL, a New Programming Language"
},
1: {
"author": "alanisawesome",
"title": "The Turing Machine"
}
}
}