可以使用forEach方法遍历数组,然后根据left和duration计算出每个元素的starttime,再将其加入到每个元素中即可。

代码如下:

let arr = [{"left":0,"widthChild":200,"duration":2},{"left":65,"widthChild":200,"duration":2},{"left":65,"widthChild":200,"duration":2}];

let startTime = 0;
arr.forEach((item) => {
  item.startTime = startTime + item.left / 100 * item.duration;
  startTime = item.startTime;
});

console.log(arr);

输出结果如下:

[
  { left: 0, widthChild: 200, duration: 2, startTime: 0 },
  { left: 65, widthChild: 200, duration: 2, startTime: 1.3 },
  { left: 65, widthChild: 200, duration: 2, startTime: 2.6 }
]

可以看到,每个元素都新增了一个startTime属性,表示其开始时间。其中第一个元素的startTime为0,其余元素的startTime根据left和duration计算得出。

let arr = left0widthChild200duration2left65widthChild200duration2left65widthChild200duration2 给arr数组加上一个starttime开始时间根据left计算starttime

原文地址: http://www.cveoy.top/t/topic/bzmO 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录