Multiplicación (*)

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

We’d love to hear your thoughts on the next set of proposals for the JavaScript language. You can find a description of the proposals here.
Please take two minutes to fill out our short survey.

El operador de multiplicación (*) produce el producto de dos operandos.

Pruébalo

console.log(3 * 4);
// Expected output: 12

console.log(-3 * 4);
// Expected output: -12

console.log("3" * 2);
// Expected output: 6

console.log("foo" * 2);
// Expected output: NaN

Sintaxis

js
x * y

Descripción

El operador * acepta dos tipos de operandos: número y BigInt. Primero intenta transformar ambos operandos a valores numéricos y prueba sus tipos. Realiza una multiplicación BigInt si ambos operandos se convierten en BigInts; de lo contrario, realiza la multiplicación de números. Se genera un TypeError si un operando es convertido a BigInt pero el otro se convierte en un número.

Ejemplos

Multiplicación usando números

js
2 * 2; // 4
-2 * 2; // -4

Multiplicación usando Infinito

js
Infinity * 0; // NaN
Infinity * Infinity; // Infinity

Multiplicación con elementos que no son números

js
"foo" * 2; // NaN
"2" * 2; // 4

Multiplicación usando BigInts

js
2n * 2n; // 4n
-2n * 2n; // -4n

2n * 2; // TypeError: Cannot mix BigInt and other types, use explicit conversions

// Para multiplicar un BigInt por un elemento que no es un BigInt, convierta cualquiera de los dos operandos
2n * BigInt(2); // 4n
Number(2n) * 2; // 4

Especificaciones

Specification
ECMAScript® 2026 Language Specification
# sec-multiplicative-operators

Compatibilidad con navegadores

Véase también