3

数値文字列があると仮定します:

var foo = "0";

それを数値として解析し、値を割り当ててインクリメントしたいとしますbar(単なる算術的な例です)。

var bar = parseInt(foo, 10)+1;

しかし、上記の例はもっと単純で読みやすいと思います。次の例を検討してください。

//alternative 1
var bar = +foo+1;

そしてこれ:

//alternative 2
var bar = ++foo;

これらは両方とも同じ結果をもたらしbarます (後者は もインクリメントfooしますが、問題ありません)。

私の質問は、これらの代替手段のいずれかを使用することで、コードを/parseIntを指定せずに使用した場合と同じ実装依存の欠陥にさらされることになるのでしょうか?radixbase

それとも、これらも安全に使用できますか?

テスト用のフィドル

4

1 に答える 1

3

可読性保守性 の観点からparseIntは、最良の選択です。何をするのかを明確に示し、確実に実行します。

明日、仲間の開発者がプロ​​ジェクトに参加するとき、数か月後に自分自身のコードを確認するとき、または突然 1 つではなく 10 ずつインクリメントすることにした場合でも、parseInt.

また、JSLintを試してください。価値がある。

于 2012-06-16T22:12:56.007 に答える