Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

.clear() ใน JavaScript WeakMap ใช้ทำอะไร?

เมธอด clear บน WeakMap ลบ key/value pairs ทั้งหมดออกจาก WeakMap object

เมธอดนี้ถูกลบออกจาก spec แล้ว แต่สามารถเพิ่มกลับมาได้โดยการ wrap WeakMap object พร้อมเพิ่มการรองรับ clear method

ตัวอย่าง

class ClearableWeakMap {    constructor(init) {       this._wm = new WeakMap(init)    }    clear() {       this._wm = new WeakMap()    }    delete(k) {    return this._wm.delete(k)    }    get(k) {       return this._wm.get(k)    }    has(k) {       return this._wm.has(k)    }    set(k, v) {       this._wm.set(k, v)    return this    } }