因为版本不同
传入的array为空时,将会返回undefined. 然而不可以将undefined分配给范型T
代码改写如下
interface IQueue<T>{
push(item: T): void;
pop(): T|undefined;
}
class Queue<T>implements IQueue<T>{
private data:T[] = []
push(item: T){
return this.data.push(item)
}
pop(): T | undefined{
return this.data.shift()
}
}
const queue = new Queue<number>()
queue.push(2)
queue.push(3)
console.log(queue.pop()?.toFixed())