Else 每次都有效,而如果我删除 Else 块,一切都会完美[关闭]

问题描述 投票:0回答:0

所以这是我的代码

stem = "/*smth*/"
for (var i = stem.length - 1; i >= 0; i--) {
    if (stem[i] == 'ա' && stem[i-1] == 'ե' && stem[i+1] != undefined) {
        var alternated = stem.slice(0, i) + stem.slice(i+1)
    } else if (stem[i] == 'ե' && stem[i+1] == 'ւ' && stem[i+2] != undefined) {
        var alternated = stem.slice(0, i) + "ի" + stem.slice(i+1)
    } else if (stem[i] == 'ո' && stem[i+1] == 'յ' && stem[i+2] != undefined) {
        var alternated = stem.slice(0, i+1) + "ւ" + stem.slice(i+2)
    } else if (stem[i] == 'ո' && stem[i+1] == 'ւ' && stem[i+2] != undefined) {
        var alternated = stem.slice(0, i) + stem.slice(i+2)
    } else if (stem[i] == 'ի' && stem[i+1] != undefined) {
        var alternated = stem.slice(0, i) + stem.slice(i+1)
    } else if (stem[i] == 'է' && stem[i+1] != undefined) {
        var alternated = stem.slice(0, i) + "ի" + stem.slice(i+1)
    } else {
        alternated = stem
    }
}
alert(alternated)

必须在某些情况下改变

stem
的值,在其他情况下不改变,并将改变/未改变的值赋予
alternated
。但它不起作用,永远不要改变
stem
,否则声明每次都有效。如果我删除 else 语句,一切都很好。我试着用 switch 写它,它有同样的问题,没有用
default:
并且没有......工作得很好

javascript string if-statement slice
© www.soinside.com 2019 - 2024. All rights reserved.