2021-03-04

anond:20210304152140

InfinityはJavaScriptが標準で持っていてどこからでもアクセスできる定数(読み取り専用変数)の名前。その名のとおり無限大を表す

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Infinity

 

min, maxはこの関数内で定義されている普通変数定義がないように見えるかもしれないが、引数のところに書いてあるので使用できる

var getParamNumber = function(paramNames, min, max) {

 

で、valueにはたぶん文字列が入っているのでparseInt(value, 10)で10進数の数値に変換するわけだが(parseIntの第二引数は基数)、

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/parseInt

このときvalueが未定義だったり、まったく数値化できない謎の文字列が入っていたりすると「NaN」という特殊な数値になってしまい、こいつは厳密には0ではないため問題を引き起こすので、そういう変な値がとれてしまった場合ちゃんと0にする必要がある

「parseInt(value,10) || 0」と書くことにより「左辺(parseIntの返値)を真偽値とみなして判定し、もし偽として判定される値(0, NaNのほかnull, undefined等が該当する)であれば||の右辺(0)を採用する」という意味になる

 

.clamp()って標準のメソッドにあったっけ…?まあ一般的想像すれば、数値がminmax範囲を超えていたら範囲内におさめるってことじゃないの

記事への反応 -
  • ツクールでゲーム作ってみたくてプラグイン見てるんだが DWindow.jsっていうののプログラムの流れが分からんのだ。 部分的に抜粋しているが、 if (arguments.length < 2) min = -Infinity; ...

    • InfinityはJavaScriptが標準で持っていてどこからでもアクセスできる定数(読み取り専用変数)の名前。その名のとおり無限大を表す https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Object...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん