Movatterモバイル変換


[0]ホーム

URL:


  1. 開発者向けのウェブ技術
  2. JavaScript
  3. JavaScript リファレンス
  4. 標準組み込みオブジェクト
  5. Math
  6. imul()

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。

View in EnglishAlways switch to English

Math.imul()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年7月⁩.

Math.imul() は静的メソッドで、2 つの引数で C 言語風の 32 ビット乗算を行った結果を返します。

試してみましょう

console.log(Math.imul(3, 4));// 予想される結果: 12console.log(Math.imul(-5, 12));// 予想される結果: -60console.log(Math.imul(0xffffffff, 5));// 予想される結果: -5console.log(Math.imul(0xfffffffe, 5));// 予想される結果: -10

構文

js
Math.imul(a, b)

引数

a

第一の数値。

b

第二の数値。

返値

与えられた引数で C 言語風の 32 ビット乗算を行った結果です。

解説

Math.imul() で C 言語と同様のの意味を持った 32 ビット乗算を行うことができます。この機能はEmscripten などのプロジェクトに有効です。

imul()Math の静的メソッドなので、常にMath.imul() として使用し、自分でMath オブジェクトを生成してそのメソッドとして使用しないでください。 (Math にはコンストラクターがありません)。

JavaScript の通常の浮動小数点数をimul() で使用すると、パフォーマンスが低下します。これは、乗算のために浮動小数点数から整数への変換、そして乗算された整数を再び浮動小数点数に変換する処理にコストがかかるためです。しかし、asm.js では、 JIT オプティマイザーが JavaScript でより確実に整数を使用できるようになり、内部的に整数として格納された 2 つの数値の乗算(asm.js でのみ可能)をimul() で行うことで、より高いパフォーマンスが得られる可能性があります。

Math.imul() の使用

js
Math.imul(2, 4); // 8Math.imul(-1, 8); // -8Math.imul(-2, -2); // 4Math.imul(0xffffffff, 5); // -5Math.imul(0xfffffffe, 5); // -10

仕様書

Specification
ECMAScript® 2026 Language Specification
# sec-math.imul

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp