javascriptの中で対象について数字の値のいくつかの特徴を転換します.
1091 ワード
以下は「Javascript高級プログラム設計第三版」の一節です.
は、オブジェクトの数値変換に関するルールです.
オブジェクトに適用する場合は、まずオブジェクトのvalueOf()メソッドを呼び出して、動作可能な値を取得します.その後、その値に上記の規則を適用します.NaNの場合は、tostring()メソッドを呼び出してから、前述の規則を適用します.
上記の説明により、オブジェクトをデジタル値に変換する必要がある場合には、まずvalueOfメソッドを呼び出し、NaNに戻ると、オブジェクトのtostring方法を呼び出すことを知っています.
だから次のテストコードを書きました.
を選択します.
Google Chrome
31.0.1650.63 (正式バージョン 238485) m
オペレーティングシステム
Windows
Blink
537.36(@163124)
JavaScript
V 8 3.1.18.13
これはchromeの改善ですか?それとも何ですか?特に記録して、他の人に参考しやすいです.
は、オブジェクトの数値変換に関するルールです.
オブジェクトに適用する場合は、まずオブジェクトのvalueOf()メソッドを呼び出して、動作可能な値を取得します.その後、その値に上記の規則を適用します.NaNの場合は、tostring()メソッドを呼び出してから、前述の規則を適用します.
上記の説明により、オブジェクトをデジタル値に変換する必要がある場合には、まずvalueOfメソッドを呼び出し、NaNに戻ると、オブジェクトのtostring方法を呼び出すことを知っています.
だから次のテストコードを書きました.
var a={
valueOf:function(){
return "admin";
},
toString:function(){
return "2";
}
}
var b={
toString:function(){
return "2";
}
}
var c={
valueOf:function(){
return "4";
}
}
console.log(+a); // print NaN
console.log(+b); // print 2
console.log(+c); // print 4
テストにより、valueOfとtostring方法が同時に存在する場合、valueOfの戻り値だけを押してデジタル値を変換し、tostring方法でも数字に戻れます.結果もNaNです.を選択します.
Google Chrome
31.0.1650.63 (正式バージョン 238485) m
オペレーティングシステム
Windows
Blink
537.36(@163124)
JavaScript
V 8 3.1.18.13
これはchromeの改善ですか?それとも何ですか?特に記録して、他の人に参考しやすいです.