我试图以json格式显示我的数据。首先我尝试了JSON.stringify 然后以字符串格式显示,因此,我再次尝试了JSON.parse,在这里我得到了对象数组,最后我尝试将[0]保留为它抛出“未定义”的解析对象...
你能告诉我我在哪里做错了吗。.
我提供以下console.log的输出。
try{
var timekeep = await Orders.findAndCountAll(
{
where : {
cid : orders_info.cid,
},
order: [
['id', 'DESC']
],
limit: 1,
}
);
console.log("RESULT => ", timekeep);
var datjsn = JSON.stringify(timekeep);
var jsonsr = JSON.parse(datjsn);
var data23 = jsonsr[0];
console.log('alpha1'+ datjsn);
console.log('delta2'+ jsonsr);
console.log('beta'+ data23);
output of the console logs
RESULT => { count: 1,
rows:
[ orders {
dataValues: [Object],
_previousDataValues: [Object],
_changed: {},
_modelOptions: [Object],
_options: [Object],
__eagerlyLoadedAssociations: [],
isNewRecord: false } ] }
alpha1 {"count":1,"rows":[ {"id":4006,"mid":1,"cid":41,"wid":7138,"oid":null,"status":null,"options":null,"starttime":"2018-08-15T06:08:55.000Z","duration":null,"ordertotal":50,"counter":null,"closetime":null}]}
delta2 [object Object]
beta undefined
答案 0 :(得分:0)
var data23 = jsonsr [0];
在这里您选错了地方。实际上数据在jsonsr.rows[0].
为此,您可以使用
jsonsr.rows[0];
或者如果键值未知,则使用Object.keys
来获取数组中的所有对象,并且在检查proceeding with loop
中的对象值的条件下使用array and length greater than 0
可以获取全部数据。
答案 1 :(得分:0)
对象是续集对象,而不仅仅是对象。
尝试使用.get()
var timekeep = await Orders.findAndCountAll(
{
where : {
cid : orders_info.cid,
},
order: [
['id', 'DESC']
],
limit: 1,
}
);
console.log(timekeep.rows[0].get())