NamedNodeMap: setNamedItem() method
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.
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.
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
InUseAttributeError
DOMException
-
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;
Specifications
Specification |
---|
DOM # dom-namednodemap-setnameditem |
Browser compatibility
Report problems with this compatibility data on GitHubdesktop | mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
setNamedItem |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.