回答:
var lowerCaseName = "Your Name".toLowerCase();
toLowerCase()
関数の時間と空間の複雑さは何ですか?
toLowerCase()
変数を呼び出すより安全な方法は次のとおり(varName || '').toLowerCase()
です。
StringオブジェクトのtoLowerCaseまたはtoLocaleLowerCaseメソッドを使用します。違いは、ユーザー/ホストの現在のロケールが考慮されることです。ECMAScript言語仕様(ECMA-262)の 15.5.4.17に従って、…toLocaleLowerCase
toLocaleLowerCase
…toLowerCaseとまったく同じように機能しますが、その結果は、ロケールに依存しない結果ではなく、ホスト環境の現在のロケールに対して正しい結果を生成することを目的としています。その言語の規則が通常のUnicodeケースマッピングと競合するいくつかのケース(トルコ語など)でのみ違いがあります。
例:
var lower = 'Your Name'.toLowerCase();
また、toLowerCase
およびtoLocaleLowerCase
関数は、任意の値型で一般的に機能するように実装されています。したがって、String
オブジェクト以外でもこれらの関数を呼び出すことができます。これを行うと、結果の文字列値の各文字の大文字と小文字を変更する前に、文字列値に自動的に変換されます。たとえば、次のような日付に直接適用 できますtoLowerCase
。
var lower = String.prototype.toLowerCase.apply(new Date());
これは実質的に以下と同等です:
var lower = new Date().toString().toLowerCase();
2番目の形式は、その単純さと読みやすさのために一般的に推奨されます。以前のバージョンのIEでは、最初のバージョンにはnull
値を処理できるという利点がありました。適用toLowerCase
またはtoLocaleLowerCase
オンの結果null
が得られますnull
(エラー状態ではありません)。
String.prototype.toLowerCase.apply(null)
戻る部分null
が正しくないようです。これは、スローTypeError
、私はそれをしようとすると、例外を。
toLocaleUpperCase()または小文字の関数は、本来あるべき動作をしません。
たとえば、私のシステム、Safari 4、Chrome 4 Beta、Firefox 3.5.xでは、トルコ語の文字列が正しく変換されません。
ブラウザは、navigator.languageにそれぞれ「en-US」、「tr」、「en-US」として応答します。
しかし、私が知る限り、ブラウザでユーザーのAccept-Lang設定を取得する方法はありません。
すべてのブラウザーをtr-TRロケール優先として構成しましたが、問題はChromeだけです。
これらの設定はHTTPヘッダーにのみ影響すると思いますが、JSを介してこれらの設定にアクセスすることはできません。
ではMozillaのドキュメントには、現在のロケールを尊重しながら、文字列内の文字が...に変換されている」と言います。
ほとんどの言語では、これは...と同じ結果を返します。
私はそれがトルコ語に対して有効であると思います、それはそれがenまたはtrとして構成されていることと違いはありません。
トルコ語では、「DİNÇ」を「dinç」に、「DINÇ」を「dınç」に、またはその逆に変換する必要があります。
Accept-Language
およびnavigator.language
2つの完全に異なる設定です。Accept-Language
Webページで受け取りたい言語についてユーザーが選択した設定を反映します(この設定は残念ながらJSにアクセスできません)。navigator.language
インストールされているWebブラウザーのローカリゼーションを反映しているだけであり、通常は何にも使用しないでください。これらの値はどちらも、システムロケールとは無関係です。システムロケールは、何をするかを決定するビットtoLocaleLowerCase()
です。これは、ブラウザの設定の範囲外のOSレベルの設定です。
の単なる例でtoLowerCase()
ありtoUpperCase()
、プロトタイプはまだ利用できないtoTitleCase()
か、toPropperCase()
String.prototype.toTitleCase = function() {
return this.split(' ').map(i => i[0].toUpperCase() + i.substring(1).toLowerCase()).join(' ');
}
String.prototype.toPropperCase = function() {
return this.toTitleCase();
}
var OriginalCase = 'Your Name';
var lowercase = OriginalCase.toLowerCase();
var upperCase = lowercase.toUpperCase();
var titleCase = upperCase.toTitleCase();
console.log('Original: ' + OriginalCase);
console.log('toLowerCase(): ' + lowercase);
console.log('toUpperCase(): ' + upperCase);
console.log('toTitleCase(): ' + titleCase);
2018年に編集
toPropperCase
する必要がありますtoProperCase
私はたくさんの人がしていることを注意を払って見ているためstrtolower()
、JavaScriptで。彼らは他の言語と同じ関数名を期待しているので、この投稿はここにあります。
ネイティブ JavaScript関数の使用をお勧めします
"SomE StriNg".toLowerCase()
これは、PHPの機能とまったく同じように動作する関数です(PHPコードをjsに移植する場合)
function strToLower (str) {
return String(str).toLowerCase();
}
+ ''
ため?
この関数はSTRINGオブジェクトでのみ機能することに注意してください。
たとえば、プラグインを使用していて、「extension.tolowercaseは関数ではありません」というJSエラーが発生する理由がわかりませんでした。
onChange: function(file, extension)
{
alert("extension.toLowerCase()=>" + extension.toLowerCase() + "<=");
「extension.toLowerCaseは関数ではありません」というエラーが発生したため、このコードを試してみたところ、問題が明らかになりました。
alert("(typeof extension)=>" + (typeof extension) + "<=");;
出力は "(typeof extension)=> object <="でした-ああ、私は入力用の文字列変数を取得していませんでした。修正は簡単ですが、気の毒なことを文字列に強制するだけです!:
var extension = String(extension);
キャスト後、extension.toLowerCase()関数は正常に機能しました。
メソッドまたは関数:toLowerCase()、toUpperCase()
説明:これらのメソッドは、文字列またはアルファベットを小文字から大文字またはその逆にカバーするために使用されます。例:「and」から「AND」。
大文字への変換:-サンプルコード:-
<script language=javascript>
var ss = " testing case conversion method ";
var result = ss.toUpperCase();
document.write(result);
</script>
結果:テストケースの変換方法
小文字への変換:-サンプルコード:
<script language=javascript>
var ss = " TESTING LOWERCASE CONVERT FUNCTION ";
var result = ss.toLowerCase();
document.write(result);
</script>
結果:小文字の変換関数のテスト
説明:上記の例では、
toUpperCase() method converts any string to "UPPER" case letters.
toLowerCase() method converts any string to "lower" case letters.
オプション1:toLowerCase();の使用
var x = "ABC";
x=x.toLowerCase();
オプション2:独自の関数を使用する
function convertToLowerCase(str) {
var result = ''
for (var i = 0; i < str.length; i++) {
var code = str.charCodeAt(i)
if (code > 64 && code < 91) {
result += String.fromCharCode(code + 32)
} else {
result += str.charAt(i)
}
}
return result
}
それを次のように呼びます:
x= convertToLowerCase(x);
この短い道をトレイ
document.write((a+"").toUpperCase());
自分で作成したい場合:
function toLowerCase(string) {
let lowerCaseString = "";
for (let i = 0; i < string.length; i++) {
//find ASCII charcode
let charcode = string.charCodeAt(i);
//if uppercase
if (charcode > 64 && charcode < 97){
//convert to lowercase
charcode = charcode + 32
}
//back to char
let lowercase = String.fromCharCode(charcode);
//append
lowerCaseString = lowerCaseString.concat(lowercase);
}
return lowerCaseString
}
JavaScript文字列に対して組み込みの.toLowerCase()メソッドを使用できます。例:var x = "Hello"; x.toLowerCase();
試す
<input type="text" style="text-transform: uppercase"> //uppercase
<input type="text" style="text-transform: lowercase"> //lowercase