帮我在一个点击事件click中,给一个数组this.markerList插入一千条假数据,this.markerList中有三条属性,id,值为number,Inglat为数组,数组里包含经纬度是两个浮点数,要求每条假数据的Inglat不可重复,最后一个是name,类型为string,请给我代码示例
时间: 2024-02-24 18:56:50 浏览: 43
Vue.js在数组中插入重复数据的实现代码
好的,以下是代码示例:
```
// 假设这是一个点击事件的回调函数
function onClick() {
// 生成一千条假数据
const fakeData = [];
for (let i = 0; i < 1000; i++) {
// 生成随机的经纬度
const lng = Math.random() * 360 - 180;
const lat = Math.random() * 180 - 90;
// 确保经纬度不重复
const isDuplicate = this.markerList.some(marker => {
return marker.Inglat[0] === lng && marker.Inglat[1] === lat;
});
if (isDuplicate) {
i--;
continue;
}
// 生成随机的id和name
const id = Math.floor(Math.random() * 1000000);
const name = `Marker ${id}`;
// 将数据插入到markerList中
this.markerList.push({
id,
Inglat: [lng, lat],
name
});
}
}
```
上述代码中,我们通过循环生成了1000条假数据,每条数据包含一个随机的id、一个不重复的Inglat数组和一个随机的name。在生成Inglat数组时,我们使用了一个循环来检查是否已经有相同的经纬度存在于markerList中,如果有则重新生成,直到不重复为止。最后,我们将生成的数据插入到markerList中。
阅读全文