files/en-us/web/api/dommatrix/premultiplyself/index.md
{{APIRef("Geometry Interfaces")}}{{AvailableInWorkers}}
The preMultiplySelf() method of the {{domxref("DOMMatrix")}} interface modifies the matrix by pre-multiplying it with the specified DOMMatrix. This is equivalent to the dot product B⋅A, where matrix A is the source matrix and B is the matrix given as an input to the method. If no matrix is specified as the multiplier, the matrix is multiplied by a matrix in which every element is 0 except the bottom-right corner and the element immediately above and to its left: m33 and m34. These have the default value of 1.
preMultiplySelf()
preMultiplySelf(otherMatrix)
otherMatrix {{optional_inline}}
DOMMatrix multiplier.Returns itself; a DOMMatrix updated to results of the applied multiplications.
const matrix = new DOMMatrix().translate(3, 22);
const otherMatrix = new DOMMatrix().translateSelf(15, 45);
console.log(matrix.toString()); // output: matrix(1, 0, 0, 1, 3, 22)
console.log(otherMatrix.toString()); // output: matrix(1, 0, 0, 1, 15, 45)
matrix.preMultiplySelf(otherMatrix);
console.log(matrix.toString()); // output: matrix(1, 0, 0, 1, 18, 67)
console.log(otherMatrix.toString()); // output: matrix(1, 0, 0, 1, 15, 45)
{{Specifications}}
{{Compat}}