SVGTransformList: initialize() method

Baseline Widely available

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

The initialize() method of the SVGTransformList interface clears all existing current items from the list and re-initializes the list to hold the single item specified by the parameter.

If the inserted item is already in a list, it is removed from its previous list before it is inserted into this list. The inserted item is the item itself and not a copy.

Syntax

js
SVGTransformList.initialize(newItem)

Parameters

newItem

An SVGTransform item that is inserted into the list.

Return value

An SVGTransform object; the item inserted into the list.

Exceptions

NoModificationAllowedError DOMException

Thrown if SVGTransformList corresponds to a read-only attribute or when the object itself is read-only.

Examples

Re-initializing the Transform List with a New Transformation

html
<svg width="200" height="200" id="mySvg">
  <rect width="100" height="100" fill="blue" />
</svg>
js
const svgElement = document.querySelector("svg");
const rectElement = svgElement.querySelector("rect");

// Access the transform list of the <rect> element
const transformList = rectElement.transform.baseVal;

// Apply an initial translate transformation to the <rect> element
const translateTransform = svgElement.createSVGTransform();
translateTransform.setTranslate(50, 50);
transformList.appendItem(translateTransform);

// Number of transformations before initialization
console.log(
  `Number of transformations before initialization: ${transformList.length}`,
); // Output: 1

// Create a new scale transformation
const scaleTransform = svgElement.createSVGTransform();
scaleTransform.setScale(2, 2);

// Initialize the list with the new scale transform
transformList.initialize(scaleTransform);

// Number of transformations after initialization
console.log(
  `Number of transformations after initialization: ${transformList.length}`,
); // Output: 1

Specifications

Specification
Scalable Vector Graphics (SVG) 2
# __svg__SVGNameList__initialize

Browser compatibility

BCD tables only load in the browser

See also