不知道为什么 dojo 会失败
doh.t(formatedValue.localeCompare("16,91 $CA") === 0, "incorrect french formatting")
formattedValue 肯定是“16,91 $CA”,所以我知道这是一个匹配。但是当我尝试在语法中添加 === 0 时,我得到“二元运算参数不可分配给 bool 类型”
我不明白,这不是在做什么,当我执行 formatedValue.localeCompare("56,96 $CA") === 0 时评估为 true/false?
最佳答案
localeCompare
专为字符串比较而设计,而不是相等测试。通过比较,我的意思是测试一个字符串是否大于或小于另一个字符串,这对于排序很有用。由于您不想对字符串进行排序,因此测试相等性可能更简单:
doh.t(formatedValue === "16,91 $CA", "incorrect french formatting");
或者更好:
doh.is(formatedValue, "16,91 $CA", "incorrect french formatting");
关于javascript - 本地比较失败的单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16830025/