Joh*_*isz 10 javascript arrays floating-point jasmine
我正在测试返回数组数组的Javascript函数,以查看返回的数组是否包含与包含预期输出的数组相同的元素:
expect(myArray).toEqual(expectedArray);
Run Code Online (Sandbox Code Playgroud)
如果myArray和expectedArray只包含整数,则可以完美地工作,但如果由于浮点精度错误而至少存在一个浮点数,则会失败.toBeCloseTo似乎没有在数组上运行.
目前我正在做一个循环来做成员检查:
for (var i = 0; i < myArray.length; i++) {
expect(myArray[i]).toBeCloseTo(expectedArray[i]);
}
Run Code Online (Sandbox Code Playgroud)
......但是有更清洁的方法吗?如果出于某种原因测试失败,则输出是臃肿具有可怕的错误消息的量.
以下代码应该回答您的问题:
actual.every((x, i) => expect(x).toBeCloseTo(expected[i]));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
961 次 |
| 最近记录: |