Math.imul()

基线 广泛可用

此功能已得到充分确立,并在许多设备和浏览器版本上正常运行。它自 2015 年 7 月.

报告反馈

试试

语法

**Math.imul()** 静态方法返回两个参数的 C 语言风格 32 位乘法的结果。
Math.imul(a, b)

js

第二个数字。

返回值

描述

给定参数的 C 语言风格 32 位乘法的结果。

Math.imul() 允许使用 C 语言语义进行 32 位整数乘法。此功能对于像 Emscripten 这样的项目很有用。

因为 imul()Math 的静态方法,所以你始终使用 Math.imul(),而不是作为你创建的 Math 对象的方法 (Math 不是构造函数)。

示例

如果你在 imul() 中使用普通的 JavaScript 浮点数,你会遇到性能下降。这是因为从浮点数到整数的转换以及将相乘的整数转换回浮点数的代价很高。但是,使用 asm.js,它允许 JIT 优化器更自信地使用 JavaScript 中的整数,使用 imul() 来乘以存储为整数的两个数字 (这只能在 asm.js 中实现),可能会更有效率。

**Math.imul()** 静态方法返回两个参数的 C 语言风格 32 位乘法的结果。
Math.imul(2, 4); // 8
Math.imul(-1, 8); // -8
Math.imul(-2, -2); // 4
Math.imul(0xffffffff, 5); // -5
Math.imul(0xfffffffe, 5); // -10

规范

使用 Math.imul()
规范
# ECMAScript 语言规范

浏览器兼容性

sec-math.imul

另请参阅