組み込み関数 (など) を使用せずに、return ステートメントを含む関数に渡された文字列を JavaScript でその場で反転するにはどうすればよいです.reverse()
か.charAt()
?
ベストアンサー1
単純な ASCII 文字を扱っていて、組み込み関数を使用することに問題がなければ、次のように動作します。
function reverse(s){
return s.split("").reverse().join("");
}
UTF-16やその他のマルチバイト文字をサポートするソリューションが必要な場合は、この関数は無効なUnicode文字列、または有効な文字列でもおかしく見える文字列を返すことに注意してください。代わりにこの答え。
配列拡張演算子は Unicode に対応しています。
function reverse(s){
return [...s].reverse().join("");
}
split()
で説明されているように、を使用する別のUnicode対応ソリューション翻訳u
、区切り文字として (Unicode) フラグが設定された正規表現を使用することです。
function reverse(s){
return s.split(/(?:)/u).reverse().join("");
}