[解決済み】javascriptでNaNを0に変換する。
2022-04-14 22:08:03
質問
if文なしでNaN値を0に変換する方法はありますか?
if (isNaN(a)) a = 0;
いちいち変数を確認するのがとても面倒です。
解決方法は?
こんなことができます。
a = a || 0
...これは、任意の "falsey" 値から、次のように変換します。
0
.
"falsey"の値は、以下の通りです。
-
false
-
null
-
undefined
-
0
-
""
( 空の文字列 ) -
NaN
( Not a Number )
お好みでこれでもか。
a = a ? a : 0;
...これは上記と同じ効果になります。
をテストする意図があるのであれば、そのテストは
NaN
であれば、同じように
数
に変換する。
a = +a || 0
これは単項演算子 + を使って
a
を数値に変換します。これは、数値文字列のようなものを変換するという利点があります。
'123'
を数値に変換します。
唯一予想外なのは、誰かがうまく数値に変換できるArrayを渡した場合かもしれません。
+['123'] // 123
ここでは、数値文字列を1つのメンバーとするArrayを用意しています。これは正常に数値に変換されます。
関連
-
[解決済み】フォームコントロールの値アクセサがない
-
[解決済み】Uncaught TypeError: nullのプロパティ'value'を読み取ることができない
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] あるJavaScriptファイルを他のJavaScriptファイルにインクルードするにはどうすればよいですか?
-
[解決済み] JavaScriptでタイムスタンプを取得する方法は?
-
[解決済み] JavaScriptで文字列をbooleanに変換するにはどうしたらいいですか?
-
[解決済み] JavaScriptでクエリ文字列の値を取得するにはどうすればよいですか?
-
[解決済み】JavaScriptの比較では、どちらの等号演算子(== vs ===)を使うべきですか?
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】TypeError: $(...).DataTable は関数ではありません。
-
[解決済み】jquery $.ajaxオブジェクトのresponseJSONプロパティを取得する方法 [重複]。
-
[解決済み】JavaScriptのgetElementByNameが機能しない
-
[解決済み】別のjsファイル内でJavaScriptの関数を呼び出す
-
[解決済み】未定義のプロパティ 'bind' を読み込めない。React.js【重複あり
-
[解決済み] エラー。モジュールhtmlが見つからない
-
[解決済み】WebpackとBabelで「このファイルタイプを扱うには適切なローダーが必要な場合があります。
-
[解決済み】getElementByIdはnullを返す?[クローズド]
-
[解決済み】 Uncaught Reference Error: stLight is not defined (in Chrome only)
-
[解決済み] JSでisNaN(null)==falseになるのはなぜですか?