Javascript 打印对象';使用映射到jsx的属性?

Javascript 打印对象';使用映射到jsx的属性?,javascript,reactjs,ecmascript-6,Javascript,Reactjs,Ecmascript 6,我有这组数据 const data = [{ date: '2017-1-1', abc: 1, def: 2 },{ date: '2017-1-2', abc: 3, def: 6 }] 如何打印 on date of 2017-1-1 abc is equal to 1 and def is equal to 2 on date of 2017-1-2 abc is equal to 3 and def is equal to 6 我一

我有这组数据

const data = [{
    date: '2017-1-1',
    abc: 1,
    def: 2
},{
    date: '2017-1-2',
    abc: 3,
    def: 6
}]
如何打印

on date of 2017-1-1
abc is equal to 1 and def is equal to 2

on date of 2017-1-2
abc is equal to 3 and def is equal to 6
我一直在把abc和def属性交给jsx。如果我使用data.map(o=>o.abc),我可以得到1,但是使用map获取属性怎么样?或者我应该使用
Object.keys
和forEach


我无法硬编码abc或def,因为它可能有其他新属性。

使用模板文字。比如:

data.map(o => `on date of ${o.date} abc is equal to ${o.abc} and def is equal to ${o.def}`)

使用
forEach
而不是map,因为您对获取新数组不感兴趣

试试下面的解决方案

const数据=[{
日期:2017年1月1日,
abc:1,
def:2
},{
日期:2017年1月2日,
abc:3,
def:6
}];
data.forEach(功能(项){
var输出=[];
Object.key(item).forEach(function(key){
如果(键!=“日期”)
输出推送(键+”等于“+项[键]);
});
console.log(“在”+item.date+“”+output.join(“和”)的日期);

})
@Debalata,请再读一遍,因为我提到我不需要数组,所以我不想使用数组map@CeciliaChan,我已更新解决方案,用于动态键值pair@Debabrata,你在开玩笑吧,清除你的事实,forEach返回未定义,map返回Array@CeciliaChan,这是你所期望的吗?