Skip to content

JavaScript 2601-2800

2618. 检查是否是类的对象实例

@medium TODO 检查答案。

ts
function checkIfInstanceOf(obj: any, classFunction: any): boolean {
    return obj != null &&
        typeof classFunction === 'function' &&
        Object(obj) instanceof classFunction
}

2619. 数组原型对象的最后一个元素

@easy 实现数组原型对象的 last 方法,返回数组的最后一个元素。如果数组为空,返回 -1

ts
declare global {
    interface Array<T> {
        last(): T | -1
    }
}

Array.prototype.last = function() {
    return this.length !== 0 ? this[this.length - 1]: -1
}

2620. 计数器

@easy 闭包问题

ts
function createCounter(n: number): () => number {
    return function() {
        return n++
    }
}

更简单的箭头写法:

ts
const createCounter = (n: number) => () => n++

2621. 睡眠函数

@easy 经典睡眠问题。

ts
async function sleep(millis: number): Promise<void> {
    return new Promise(resolve => setTimeout(resolve, millis))
}

箭头写法:

ts
const sleep = (millis: number) => new Promise(resolve => setTimeout(resolve, millis))