ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScriptで値を文字列に変換する方法
変換方法: 1. " " 演算子を使用して空の文字列と結合します。構文は "value''" です。 2. テンプレート文字列を使用します。構文は "${value}" です。 3 . "JSON.stringify" (value)" ステートメントを使用します。 4. "value.toString()" ステートメントを使用します。 5. "String(value)" ステートメントを使用します。
このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
JavaScript で値を文字列に変換する 5 つの方法
const value = 12345; // Concat Empty String value + ''; // Template Strings `${value}`; // JSON.stringify JSON.stringify(value); // toString() value.toString(); // String() String(value); // RESULT // '12345'
5 つの方法を比較
それでは、さまざまな値を使用して 5 つの方法をテストしてみましょう。テストする変数は次のとおりです。
const string = "hello"; const number = 123; const boolean = true; const array = [1, "2", 3]; const object = {one: 1 }; const symbolValue = Symbol('123'); const undefinedValue = undefined; const nullValue = null;
「 " 演算子を使用して空の文字列と結合します。
string + ''; // 'hello' number + ''; // '123' boolean + ''; // 'true' array + ''; // '1,2,3' object + ''; // '[object Object]' undefinedValue + ''; // 'undefined' nullValue + ''; // 'null' // ⚠️ symbolValue + ''; // ❌ TypeError
ここから、値が次のとおりであるかどうかを確認できます。シンボルの場合、このメソッドは TypeError をスローします。それ以外の場合は、すべてがうまく見えます。
テンプレート文字列
`${string}`; // 'hello' `${number}`; // '123' `${boolean}`; // 'true' `${array}`; // '1,2,3' `${object}`; // '[object Object]' `${undefinedValue}`; // 'undefined' `${nullValue}`; // 'null' // ⚠️ `${symbolValue}`; // ❌ TypeError
テンプレート文字列を使用した結果は、基本的に空の文字列を結合した場合と同じになります。繰り返しますが、これは TypeError をスローするため、Symbol を処理する理想的な方法ではない可能性があります。
興味がある場合は、TypeError を参照してください。 TypeError: Symbol 値を文字列に変換できません
JSON.stringify()
JSON.stringify(string); // '"hello"' JSON.stringify(number); // '123' JSON.stringify(boolean); // 'true' JSON.stringify(array); // '[1,"2",3]' JSON.stringify(object); // '{"one":1}' JSON.stringify(nullValue); // 'null' JSON.stringify(symbolValue); // undefined JSON.stringify(undefinedValue); // undefined
したがって、通常は、値を文字列に変換するために JSON.stringify を使用しません。そして、ここでは実際に強制は行われていません。つまり、利用可能なすべてのツールを知っていることになります。その後、ケースバイケースで使用するのではなく、どのツールを使用するかを決定できます。実際の文字列値に使用すると、引用符で囲まれた文字列に変更されます。
.toString()
string.toString(); // 'hello' number.toString(); // '123' boolean.toString(); // 'true' array.toString(); // '1,2,3' object.toString(); // '[object Object]' symbolValue.toString(); // 'Symbol(123)' // ⚠️ undefinedValue.toString(); // ❌ TypeError nullValue.toString(); // ❌ TypeErrorつまり、値を文字列に変換する場合、PK は実際には toString() と String() の間にあります。未定義と null に対してエラーがスローされることを除いて、すべてが正常に動作します。したがって、これには必ず注意してください。
String()
String(string); // 'hello' String(number); // '123' String(boolean); // 'true' String(array); // '1,2,3' String(object); // '[object Object]' String(symbolValue); // 'Symbol(123)' String(undefinedValue); // 'undefined' String(nullValue); // 'null'まあ、勝者が見つかったと思います
ご覧のとおり、String() は次の処理を行いますnull と未定義は非常にうまく機能します。それを望まない限り、エラーはスローされません。基本的には私のアドバイスを覚えておいてください。自分のアプリケーションについては自分が一番よく知っているので、自分の状況に最適なものを選択する必要があります。
結論: String()
すべてのさまざまなメソッドがさまざまなタイプの値を処理する方法を示した後。違いを理解して、次回コードに取り組むときにどのツールを使用すればよいかわかるようになれば幸いです。よくわからない場合は、String() が常に適切なデフォルトの選択です。
JavaScript 上級チュートリアル
]以上がJavaScriptで値を文字列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。