首页 > 解决方案 > 从二维数组属性创建一个新的值数组

问题描述

所以我有一个Object指定长度的数组。对象数组的结构如下:

{
   color
   text
   id
   vids {
      vidfile
      id
   }
   {
      vidfile
      id
   }
}
{
   color
   text
....

等等。请注意,每个对象都有object一个,并且里面的id每个对象也有一个。s的数量和的数量一样可以改变。我需要一种方法来映射一个新的对象数组,其中每个 id 的结构 {id, scroll_top} 都来自和,在旧数组中。vididobjectvidsobjectvids

我有一些类似的东西

let new_array = []

for (let object of old_array) {
    new_array.push({id: object.id, scroll_top: document.getElementById(object.id).offsetTop})
    for (let vid of object.vids) {
      new_array.push({id: vid.id, scroll_top: document.getElementById(vid.id).offsetTop})
    }
  }

但是我收到 TypeErrorsdocument.getElementById(...) is null

任何指针?

标签: javascriptarrays

解决方案


推荐阅读