Jasmine to Equal没有按预期工作

Jasmine toEqual not working as expected

本文关键字:工作 to Equal Jasmine      更新时间:2023-09-26

我有一个Jasmine测试,如下所示:

expect(array.length).toEqual(0);

这就过去了。出于好奇,我把它改成:

expect(array.length).toEqual(false);

此测试失败。我的印象是toEqual方法的比较并不严格。如果我们做

console.log(0 == false);

我们得到输出

true

那么,为什么这个测试失败了呢?

在研究后回答我自己的问题:jasmine采用了underline的isEqual方法,该方法进行了深入的比较,以确定对象是否应该相等。因此,它是一个比javascript的标准==比较更健壮的比较。