我有一个像这样的茉莉花测试:

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


这样过去了。出于好奇,我将其更改为:

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


该测试失败。我的印象是toEqual方法进行了不严格的比较。如果我们这样做

console.log(0 == false);


我们得到输出

true


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

最佳答案

经过研究后回答了我自己的问题:茉莉花采用下划线的isEqual方法,该方法进行了深层比较以确定对象是否应该相等。因此,它比javascript的标准==比较更具鲁棒性。

关于javascript - Jasmine toEqual无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33831191/

10-12 16:26