例如,我有以下代码;
switch ("SS") {
case "SS":
word = "hello";
break;
case "SSS":
word = "bye";
break;
}
我正在寻找SSS但是当它看到第一个SS时,它与第一个案例相匹配并且word = hello
当我遇到一个案例与另一个案例相交的情况时,如何修改代码?
答案 0 :(得分:0)
将其作为字符串切换条件。
var condition = '0';// or '00'
switch (condition) {
case '0':
word = "hello";
break;
case '00':
word = "bye";
break;
}
答案 1 :(得分:0)
将其解析为String并使用此
switch ("00") {
case "0":
word = "hello";
break;
case "00":
word = "bye";
break;
}
答案 2 :(得分:0)
你这样做是因为00 = 0; 如果您想获得欲望结果,请使用字符串而不是数字,如下所示:
var arrayClone = _.cloneDeep(arrayB);
var removeThese = [];
Object.keys(arrayClone).forEach(function(p) {
removeThese.push(p)
});
removeThese.forEach(function(remove) {
arrayB.forEach(function(item) {
if(item.id === remove) {
delete objA[remove];
}
});
});
答案 3 :(得分:0)
00不正确,因为您尝试将此值作为整数传递。整数不能以0开头,后跟某个东西。在后台,您的00值将转换为简单的0
如果您想保留自己的方法,则应将其转换为'00'
并执行以下操作:
switch ('00') {
case '0':
word = "hello";
break;
case '00':
word = "bye";
break;
}
答案 4 :(得分:0)
试试这个
switch ('00') {
case '0':
word = "hello";
break;
case '00':
word = "bye";
break;
}
结果是
再见
答案 5 :(得分:0)
switch
"SS"
将始终带您进入"SS"
案例标签(或{{1}如果提供 - 如果default
缺少作为案例标签)。
通常,您倾向于打开变量,但标签的情况将是常量。
如果您希望程序控制流程继续直接进入另一个"SS"
,请删除相应的case
语句。
答案 6 :(得分:0)
switch("00")
{
case "0":
console.log("Hello");break;
case "00":
console.log("Bye");break;
}
使用字符串而不是数字。 如果您有一个数字,那么在切换条件下将其更改为字符串 即switch(input.toString()){...} 这样可以正常使用