扩展后控制台日志中的输出不匹配

时间:2018-09-02 00:27:02

标签: javascript angular typescript

我正在设置一个对象,当我打印该对象时,我在未扩展的日志中看到了正确的值,但是当我对其进行扩展时,我看到了一个不同的值。不知道为什么会这样。

enter image description here

    const bidA = this.userBid;
    const bidB = this.updatedProject.leadingBid;
    bidA.currentBidAmt = 495;
    bidA.minAmt = 200;
    bidA.type = 'AUTO';
    console.log('Bid A: ', bidA);

1 个答案:

答案 0 :(得分:3)

在创建日志条目时,您的对象的currentBidAmt495。 同时,该值已被应用程序更新为475

Chrome不会在记录日志时复制完整的对象,而只是为它当时看到的(某些)值创建一个字符串表示形式。但是,它保留了对活动对象的引用,该对象在扩展日志条目时进行评估。这就是为什么您看到其当前值。

获取当前值的建议解决方法是使用JSON.stringify()。这将在记录时评估您要记录的内容的值。输出将是对象的字符串表示形式。