JavaScriptのMath.hypot()関数とは?使い方と実行例をわかりやすく解説
Math.hypot()関数とは
Math.hypot()は、引数として渡された値の2乗の合計の平方根を返すメソッドです。直角三角形の2辺の長さから斜辺(ピタゴラスの定理に基づく値)を求める際によく使われます。つまり、三角形の辺の長さを引数として渡すだけで、斜辺の長さを簡単に計算できるのです。
構文
Math.hypot(arg1, arg2, ...);
基本的な使用例
次の例では、直角三角形の2辺の長さを引数として渡し、斜辺を求めています。なお、数値に変換できない値が引数に含まれていた場合は、結果としてNaNが返されます。
<html>
<body>
<script>
document.write(Math.hypot(7, 24));
document.write("</br>");
document.write(Math.hypot(7, "hi"));
</script>
</body>
</html>出力
25 NaN
上記の例では、Math.hypot(7, 24)は√(7² + 24²) = √625 = 25を返します。一方、2つ目の呼び出しでは数値に変換できない文字列"hi"が渡されたため、結果はNaNとなっています。
負の値を渡した場合
このメソッドは負の値も引数として受け付けることができます。負の値が渡されても、その2乗の合計の平方根を正しく計算します。
使用例
<html>
<body>
<script>
document.write(Math.hypot(-7, -24));
document.write("</br>")
document.write(Math.hypot(-3, -4))
</script>
</body>
</html>出力
25 5
負の値を2乗すると正の数になるため、Math.hypot(-7, -24)は25、Math.hypot(-3, -4)は5という結果になります。
3つ以上の引数を渡した場合
Math.hypot()は、2つだけでなく3つ以上の引数も受け取ることができます。その場合も、すべての引数の2乗の合計の平方根を計算します。
使用例
<html> <body> <script> document.write(Math.hypot(1, 2, 3)); </script> </body> </html>
出力
3.74165738677
この例では、√(1² + 2² + 3²) = √14 ≒ 3.74165738677が返されています。3つ以上の引数を扱えるため、3次元空間におけるベクトルの大きさ(ユークリッド距離)の計算などにも活用できる便利なメソッドです。
-
JavaScriptのMath.imul()関数とは?32ビット乗算の使い方を解説
Math.imul()関数とは JavaScriptのMath.imul()関数は、通常の掛け算とは異なり、2つの引数に対してC言語と同様の32ビット乗算を実行し、その結果を返すメソッドです。一般的な乗算演算子(*)では正確に扱えない大きな数値や、ビットレベルの演算が必要な場面で活躍します。 この関数は、特にEmscriptenのようなプロジェクトにおいて重要な役割を果たしています。EmscriptenはC/C++のコードをJavaScriptに変換するツールであり、変換後のコードでC言語と同じ32ビット整数の挙動を再現するために、Math.imul()が頻繁に利用されます。 構文 var
-
JavaScriptでのSentryの使い方とは?主な機能をわかりやすく解説
Sentryとは?JavaScript開発を支えるデバッグ・監視ツールSentryは、本番環境(プロダクション)で稼働しているコードを追跡できる、JavaScript向けの総合的なデバッグ・監視ツールパッケージです。開発環境では再現しないエラーや、ユーザーの端末上でのみ発生する不具合を効率的に把握できるため、Webアプリケーションの品質向上に欠かせない存在となっています。Sentryが提供する主な機能は以下の通りです。1. 環境情報と使用状況の記録によるバグ再現エラー発生時のOS、ブラウザ、デバイス、URLなどの環境情報やユーザーの操作状況を自動的に記録します。これにより、報告だけでは再現が難