如何循环通过数组(对象数组)在一个特定的索引开始到最后和改变属性在Javascript中的对象? &g


let library = []; //this stores each object 

每个对象都有一个名为"id"的属性,其中存储了一个数字,这表示对象在标准库数组中的索引。基本上,当一个对象从库中删除时,我想获得数组中所有在被删除对象之后的对象,并从id属性中减去1。

function updateId(index) {
for (let i = index; i <= library.length; i++) {
library[i].id - 1;
}
}
到目前为止,我有这个函数,其中参数index是对象在数组中被删除的位置。我得到一个引用错误,最后一行的代码

不是i <= library.length,而是i < library.length

当前这行说的是"继续这个for循环,只要i小于或等于长度"。…但请记住,i(即。索引)是从零开始的,而长度则不是。这意味着你可以循环越过

注意,这只是解决这个问题的众多方法之一!你就快成功了。你的代码需要一些东西:

  • 要访问函数内部的'library',你应该将它传递给函数。函数应该只操作变量,他们收到了作为参数。
  • 你的for循环应该继续,如果i小于等于长度
  • 如果你改变了函数中的'library',你需要返回它,并覆盖原来的。

function updateId(library, startingAtIndex) {
for (let i = startingAtIndex; i < library.length; i++) {
library[i].id -= 1;
}
return library
}

things = [{name:'a', id:1},{name:'c', id:3},{name:'d', id:4}]
things = updateId(things, 1)
console.log(things)

相关内容

  • 没有找到相关文章

最新更新