Javascript 从数组索引更新HTML键属性

Javascript 从数组索引更新HTML键属性,javascript,html,Javascript,Html,我有如下简单的html结构: <ul> <li key="0">Text1</li> <li key="1">Text2</li> <li key="2">Text3</li> </ul> 在此之后,li元素的关键属性是不实际的。所以我的问题是:拼接后如何从数组索引更新密钥?构建一个知道如何渲染自身的组件 类密钥{ 构造函数(数据、容器){ 此._data=[].conca

我有如下简单的html结构:

<ul>
    <li key="0">Text1</li>
    <li key="1">Text2</li>
    <li key="2">Text3</li>
</ul>

在此之后,
li
元素的关键属性是不实际的。所以我的问题是:拼接后如何从数组索引更新密钥?

构建一个知道如何渲染自身的组件

类密钥{
构造函数(数据、容器){
此._data=[].concat(数据)
this.container=容器;
这个。render();
}
移除(键){
this.\u data=this.\u data.filter(k=>k!==key);
返回这个.render();
}
添加(键){
this._data=this._data.concat(key.sort();
返回这个.render();
}
render(){
这
.集装箱
.innerHTML=此
美国数据
.reduce((分辨率、文本、索引)=>(
res.concat(`
  • Text${Text}
  • `) ), '') ; 归还这个; } } var cntr=document.getElementById('ListContainer'); var数据=[1,2,3,4,5,6]; 变量键=新键(数据,cntr); 设置超时(()=>keys.remove(3),2000); 设置超时(()=>keys.add(67),3500)
      我认为您在这里提供的信息不够。您的示例应该是完整的(您已经提供了重现问题所需的所有部分),并且是可验证的(您所遇到的问题在您提供的示例中存在)。请查看此以了解更多信息:是的,我使用它来删除li,但问题是在它之后更新密钥。例如:使用key=“1”删除元素后,我想更新数组中的键。并且key=“2”的元素必须是key=“1”,但您只需要重新/呈现所有列表,而不是使一切复杂化。。。它将自动绑定到正确的键。
      let keyBook = getAttribute("key");
      ...
      books.splice(keyBook, 1);