我正在对字符串对进行一些条件连接。如果不满足条件,则两者之间加一个空格 以下是我的较大代码的一小部分,但复制了我的问题
a = "ai";
b = "b";
res = "";
if (a.match(/ai$/))
{
if (b.match(/^ā/) || b.match(/^a/) ||
b.match(/^i/) || b.match(/^ī/) ||
b.match(/^u/) || b.match(/^ū/) ||
b.match(/^e/) || b.match(/^o/) ||
b.match(/^ṛ/))
{
res = a.slice(0, -1) + 'a ' + b
}
}
else
res = a+ ' ' + b
结果应该是ai b
但我明白了''
我做错了什么?
最佳答案
将 else
移至第一个 if
内,以便在内部 if
未执行时触发 else
满意:
a = "ai";
b = "b";
res = "";
if (a.match(/ai$/))
{
if (b.match(/^ā/) || b.match(/^a/) ||
b.match(/^i/) || b.match(/^ī/) ||
b.match(/^u/) || b.match(/^ū/) ||
b.match(/^e/) || b.match(/^o/) ||
b.match(/^ṛ/))
{
res = a.slice(0, -1) + 'a ' + b
}
else{
res = a+ ' ' + b
}
}
console.log(res);
关于javascript - 如果 else 失败,则嵌套后 else 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49385261/