{__ob__: Observer} startTime : "13:0:0" stopTime : "14:0:0"} 判断这个对象在0 : startTime : "13:0:0" stopTime : "14:0:0" __ob__ : Observer {value: {…}, shallow: false, mock: false, dep: Dep, vmCount: 0} get startTime : ƒ reactiveGetter() set startTime : ƒ reactiveSetter(newVal) get stopTime : ƒ reactiveGetter() set stopTime : ƒ reactiveSetter(newVal) [[Prototype]] : Object 1 : startTime : "16:0:0" stopTime : "17:0:0" __ob__ : Observer {value: {…}, shallow: false, mock: false, dep: Dep, vmCount: 0} get startTime : ƒ reactiveGetter() set startTime : ƒ reactiveSetter(newVal) get stopTime : ƒ reactiveGetter() set stopTime : ƒ reactiveSetter(newVal) [[Prototype]] : Object 2 : startTime : "16:0:0" stopTime : "0:0:0" __ob__ : Observer {value: {…}, shallow: false, mock: false, dep: Dep, vmCount: 0} get startTime : ƒ reactiveGetter() set startTime : ƒ reactiveSetter(newVal) get stopTime : ƒ reactiveGetter() set stopTime : ƒ reactiveSetter(newVal) [[Prototype]] : Object 3 : startTime : "16:22:58" stopTime : "19:22:58" 这个数组中的下标位置,代码怎么写
时间: 2023-12-14 16:37:22 浏览: 162
Observer模式代码实现
如果要判断数组中某个对象的 startTime 和 stopTime 是否与某个时间段重叠,可以使用以下代码:
```javascript
const time = "15:30:00"; // 要判断的时间
const arr = [
{ startTime: "13:0:0", stopTime: "14:0:0" },
{ startTime: "16:0:0", stopTime: "17:0:0" },
{ startTime: "16:0:0", stopTime: "0:0:0" },
{ startTime: "16:22:58", stopTime: "19:22:58" },
];
for (let i = 0; i < arr.length; i++) {
const { startTime, stopTime } = arr[i];
if (startTime <= time && time <= stopTime) {
// 重叠
console.log(`时间段${i}与${time}重叠`);
}
}
```
这段代码会遍历数组中的每个对象,分别取出 startTime 和 stopTime,然后将要判断的时间与其进行比较,如果在时间段内,则认为重叠。如果要获取重叠的时间段的具体信息,可以将判断重叠的逻辑放到一个函数中,并返回重叠的对象列表。
阅读全文