我正在设置一个对象,当我打印该对象时,我在未扩展的日志中看到了正确的值,但是当我对其进行扩展时,我看到了一个不同的值。不知道为什么会这样。
const bidA = this.userBid;
const bidB = this.updatedProject.leadingBid;
bidA.currentBidAmt = 495;
bidA.minAmt = 200;
bidA.type = 'AUTO';
console.log('Bid A: ', bidA);
答案 0 :(得分:3)
在创建日志条目时,您的对象的currentBidAmt
为495
。
同时,该值已被应用程序更新为475
。
Chrome不会在记录日志时复制完整的对象,而只是为它当时看到的(某些)值创建一个字符串表示形式。但是,它保留了对活动对象的引用,该对象在扩展日志条目时进行评估。这就是为什么您看到其当前值。
获取当前值的建议解决方法是使用JSON.stringify()。这将在记录时评估您要记录的内容的值。输出将是对象的字符串表示形式。