前の言葉
タイプ変換に関して、オブジェクトの2つの一般的な方法は、toString()とvalueof()です。実際、これらの2つの方法は、パッケージングタイプにも適用できます。 ToString()メソッドは以前に導入されています。この記事では、元の値を返すValueof()メソッドを紹介します
【1】未定義とnullにはvalueof()メソッドがありません
undefined.valueof(); //エラーnull.valueof(); // error
【2】ブールデータ真および誤ったデータは元の値に戻ります
true.valueof(// truetypeof true.valueof(); // 'boolean'false.valueof(); //' falseTypeof false.valueof(); // 'boolean'boolean.valueof(); // boolean(){[ネイティブコード]}タイプBOOLEAN.VOOLEAOF【3 string型の元の値が返されます
'1'.valueof(); //' 1 '' '。valueof(); //' '' abc'.valueof(); // 'abc'string.valueof(); // string(){[native code]} typeof string.valueof(); //' function '' function ''【4】数のタイプは、処理のために整数と浮動小数点数に分割されます
number.valueof(); // number(){[native code]} typeof number.valueof(); // 'function'1.整数は.valueof()フォームに直接追いつくと、エラーが報告され、無効なマークがプロンプトされますので、ブラケットを追加してみてください
0.valueof(// uncaught syntaxerror:無効または予期しないトークン(0).valueof(); // 0+0.valueof(); // contaxerror:無効または予期しないトークン(+0).valueof(); // 0-0.valueof();
[注] -0の値()値は-0であり、-0のtoString()値の値は「0」です
2。フローティングポイント番号の元の値を返します
1.23.ValueOf(); // 1.23+1.23.ValueOf(); // 1.23-1.23.Valueof(); //-1.23Nan.Valueof(); // naninfinity.valueof();
[注] toString()の違いは、valueof()が変換のカーディナリティを受信できないことです
【5】オブジェクトタイプとカスタムオブジェクトタイプは、元のオブジェクトに戻ります
{} .valueof(); //エラー、予期しないトークン({})。valueof(); // object {} typeof({})。valueof(); // 'object'({a:123}) object.valueof(); // 'function' function person(){this.name = 'test';} var person1 = new Person(); person1.valueof(); // person {name: "test"}【6】関数型は元の関数に戻ります
function test(){alert(1); // test} test.valueof();/*function test(){alert(1); // test}*/function.valueof(); // function(){[ネイティブコード]}【7】配列タイプは元の配列に戻ります
[] .valueof(); // [] [1] .valueof(); // [1] [1,2,3,4] .valueof(); // [1,2,3,4] array.valueof(); // array(){[ネイティブコード]} {[ネイティブコード]}【8】他のオブジェクトとは異なり、日付タイプは数値を返します。今回は値です
date.now(); // 1465115123742(new date())。valueof(); // 1465115123742Typeof(new date())。
【9】regexpタイプは、元の通常のオブジェクトを返します
/ab/i.valueof(); /// ab/i/mom(およびdad(and baby)?)?
【10】エラータイプ
error.valueof(// error(){[native code]} raveererror.valueof(); // raseerror(){[native code]} referenceerror.valueof(); // referenceError(){[native code]} syntaxerror.valueof(); {[ネイティブコード]} urierror.valueof(); // urierror(){[ネイティブコード]}要約します
1. toString()とvalueof()の主な違いは、toString()が文字列を返すこと、valueof()が元のオブジェクトを返すことです
2。未定義でヌルはオブジェクトではないため、どちらもtoString()およびvalueof()メソッドではありません。
3.数値タイプのtoString()メソッドは、変換のカーディナリティを受信し、異なる数字の文字列の形で数値を返すことができます。 valueof()メソッドは変換のカーディナリティを受け入れることはできません
4。時間型のtoString()メソッドは、時間を表す文字列表現を返します。値()メソッドは、現在から1970年1月1日までの数百秒の数値タイプを返します。
上記の記事では、string.valueof()メソッドの使用について簡単に説明します。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。