関数を使わずにこれがどうなるか知りたいのですが。使ってみましString.fromCharCode
たが、うまくいかなかったと思います。何か案は?
3 に答える
a
を介して英字以外のものをサポートしたい場合、文字を小文字から大文字に変換することは簡単ではありませんz
。Unicode データベースに関連するマッピングがあります。
toUpperCase
この仕事に適したツールも同様です。仕様によると、Unicode データベースを使用して適切な大文字を選択します。(そのリンクは と同じことを言っているだけですtoLowerCase
が、大文字の場合です。)toUpperCase
toLowerCase
a
ただし、からまでの英字のみをサポートしている場合z
、それらは 97 から 122 までの文字コードで表されます。A
~Z
は、文字コード 65 ~ 90 で表されます。そう:
var upperChar = String.fromCharCode(lowerChar.charCodeAt(0) - 32);
それをするでしょう。しかし、そうしないことを強くお勧めします。
アスキーテーブルASCIIを見てください。A = 65 ... A = 97
これは正しい方法ではないことを忘れないでください。ただし、このレベルのプログラミングに進む必要がある場合は、これが正しい方法です。これは ascii (英字) のみで機能します。
多くのマイナス点がありますが、これがあなたの質問に対する答えです:)。
'A' の ASCII 値は 65 ですが、'a' は 97 です。それらの差は 97 – 65 = 32 です。したがって、'A' の ASCII 値に 32 を加算すると、それは 'a' になり、減算する場合は、 'a' の ASCII 値の 32 は 'A' になります。それはすべてのアルファベットに当てはまります。一般的なルール:
大文字 = 小文字 – 32
小文字=大文字+32