请看一下我的代码:
const foo = {
value: new String("ABC")
}
const bar = {
value: new String("XYZ")
}
const baz = {
value: foo.value
}
switch (baz.value) {
case foo.value: {
console.log("ABC")
}
case bar.value: {
console.log("XYZ")
}
}
预期:ABC
当前:ABC
XYZ
bar.value
包含另一个对象,然后foo.value
foo.value === bar.value
返回 false
,那么它是如何工作的呢?
谢谢!
将中断指令放在交换机中每种情况的末尾。这应该可以完成这项工作。
正如Lain所说,break
缺失了。在这种情况下,代码操作第一种情况,然后操作两种情况。
switch (baz.value) {
case foo.value: {
console.log("ABC")
break
}
case bar.value: {
console.log("XYZ")
break
}
}