首页 > 解决方案 > 为什么 .mock.instances 打印这个?

问题描述

此代码片段是从jest 文档中提取的。

const myMock = jest.fn();

const a = new myMock();
const b = {};
const bound = myMock.bind(b);
bound();

console.log(myMock.mock.instances);
// > [ <a>, <b> ]

我无法理解为什么 console.log(myMock.mock.instances)打印:

[< a >, < b > ]

我只是有点困惑为什么要打印标签。

此外,当我在我的机器上运行它时,我得到:

[ mockConstructor {}, {} ]

标签: jestjs

解决方案


<a>并且<b>不是标签,而是针对不同于常规 JavaScript 值的特殊值进行格式化。

[<a>, <b>]表示在第一次调用和 第二次调用时myMock收到a的函数。thisb


推荐阅读