📅  最后修改于: 2023-12-03 15:27:46.015000             🧑  作者: Mango
在 JavaScript 中,我们经常需要将 DOM 中的元素属性值(如颜色)存储到一个数组中。本文将介绍如何将节点的红色属性值推送到数组中。
首先,我们需要获取对应节点的属性值。可以使用 Element.getAttribute()
方法来获取节点属性值,如下所示:
const elem = document.querySelector('#myElement');
const color = elem.getAttribute('style');
上面的代码将获取节点 #myElement
的样式属性值,并将其存储到 color
变量中。
接下来,我们需要从样式属性值中提取出红色的值。可以使用正则表达式来提取,如下所示:
const regex = /rgb\((\d+), (\d+), (\d+)\)/;
const match = regex.exec(color);
const red = match[1];
上面的代码将使用正则表达式来匹配 rgb()
格式的颜色值,并将匹配到的红色值存储到 red
变量中。
最后,我们可以将红色值推送到数组中,如下所示:
const redArr = [];
redArr.push(red);
上面的代码将创建一个空数组 redArr
,并将红色值推送到数组末尾。
完整代码如下所示:
const elem = document.querySelector('#myElement');
const color = elem.getAttribute('style');
const regex = /rgb\((\d+), (\d+), (\d+)\)/;
const match = regex.exec(color);
const red = match[1];
const redArr = [];
redArr.push(red);
现在,我们已经成功地将节点的红色属性值推送到数组中了。
注意:上述代码中使用了硬编码的颜色格式 rgb()
,如果节点使用的是其他颜色格式(如 #FF0000
或 red
),则需要相应地修改正则表达式和匹配代码。