The setNamedItem() method of the NamedNodeMap interface puts the Attr identified by its name in the map. If there is already an Attr with the same name in the map, it is replaced.
On this page
NamedNodeMap: setNamedItem() method
Syntax
js
setNamedItem(attr)
Parameters
-
attr -
the attribute to insert in the map.
Return value
Returns the old attribute if replaced, or null if the attribute is new.
Exceptions
InUseAttributeErrorDOMException-
Thrown if the attribute is still part of another map.
Example
html
<span one="one" two="two"></span>
<pre test="testValue"></pre>
js
const span = document.querySelector("span");
const pre = document.querySelector("pre");
const attrMap = pre.attributes;
let result = `The '<pre>' element initially contains ${attrMap.length} attributes.\n\n`;
result += "We remove `one` from `<span>` and adds it to `<pre>`.\n";
const one = span.attributes.removeNamedItem("one");
attrMap.setNamedItem(one);
result += `The '<pre>' element now contains ${pre.attributes.length} attributes.\n\n`;
result += "We get 'two' from '<span>' and try to adds it to '<pre>'.\n";
const two = span.attributes.getNamedItem("two");
try {
attrMap.setNamedItem(two);
} catch (error) {
result += `An exception has been raised: ${error.name}.\n`;
}
pre.textContent = result;
Specification
| Specification |
|---|
| DOM Standard # dom-namednodemap-setnameditem |
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
setNamedItem |
1 | 12 | 1 | 6 | ≤12.1 | 1 | 4.4 | 18 | 4 | ≤12.1 | 1 | 1.0 |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/NamedNodeMap/setNamedItem