Javascript 无法打印json中的属性

Javascript 无法打印json中的属性,javascript,node.js,Javascript,Node.js,我正在动态地将新属性(对象)添加到现有对象中 这是我的密码: .then(transactionDetails => { console.log(transactionDetails); if(transactionDetails != null){ transactionDetails["nextDueDate"]; for(var i = 0; i < transact

我正在动态地将新属性(对象)添加到现有对象中

这是我的密码:

.then(transactionDetails => {
            console.log(transactionDetails);
            if(transactionDetails != null){
                transactionDetails["nextDueDate"];
                for(var i = 0; i < transactionDetails.length; i++){
                    if(transactionDetails[i].customers_installment_detail.installment1_isPaid === false){
                        nextDueDate = {
                            installment1_dueAmount:transactionDetails[i].customers_installment_detail.installment1_dueAmount,
                            installment1_dueDate:transactionDetails[i].customers_installment_detail.installment1_dueDate
                        }
                    }else if(transactionDetails[i].customers_installment_detail.installment2_isPaid === false){
                        nextDueDate = {
                            installment2_dueAmount:transactionDetails[i].customers_installment_detail.installment2_dueAmount,
                            installment2_dueDate:transactionDetails[i].customers_installment_detail.installment2_dueDate
                        }
                    }else if(transactionDetails[i].customers_installment_detail.installment3_isPaid === false){
                        nextDueDate = {
                            installment3_dueAmount:transactionDetails[i].customers_installment_detail.installment3_dueAmount,
                            installment3_dueDate:transactionDetails[i].customers_installment_detail.installment3_dueDate
                        }
                    }else if(transactionDetails[i].customers_installment_detail.installment4_isPaid === false){
                        nextDueDate = {
                            installment2_dueAmount:transactionDetails[i].customers_installment_detail.installment4_dueAmount,
                            installment2_dueDate:transactionDetails[i].customers_installment_detail.installment4_dueDate
                        }
                    }
                    transactionDetails[i]["nextDueDate"] = nextDueDate;
                }
                res.json({response:transactionDetails});
            }else{
                res.json({response:"No active transaction."});
            }
        })
。然后(transactionDetails=>{
console.log(事务细节);
if(transactionDetails!=null){
交易详情[“下一个交易日期”];
对于(var i=0;i

我正在动态添加
nextDueDate
。我可以通过键入
transactionDetails[0]在控制台中打印出值。但是,当我尝试用JSON打印出整个对象时,
nextDueDate
丢失,无法打印出来。有什么原因吗?

这是由于根据此线程对问题进行续集:

我通过在模型中添加虚拟列修复了此问题

nextDueDate: Sequelize.VIRTUAL

上面的控制台语句不在顶部吗?我的意思是,您稍后将添加动态属性。正如@YousafHassan所说,您的console.log for transactionDetails将在添加nextDueDate之前执行。此外,该行交易详情[“nextDueDate”];没有意义。@YousafHassan我在res.json({response:transactionDetails})上放了一个断点@kylas这是因为transactionDetails[“nextDueDate”];什么都不做。为其指定一些值,例如null,以查看差异。