Files
Huáng JùnliàngandGitHub 980dcb8b01 Memoize class binding when compiling private methods and static elements (#15701)
* add test cases

* fix: memoise class binding when lowering static elements and private methods

* update test fixtures

* update test fixtures
2023-07-19 17:59:21 -04:00

20 lines
329 B
JavaScript

class A {
static #self = this;
static #getA = () => this;
static extract() {
return { self: A.#self, getA: A.#getA };
}
}
const { self, getA } = A.extract();
expect(self).toBe(A);
expect(getA()).toBe(A);
const oldA = A;
A = null;
expect(oldA.extract().self).toBe(oldA);
expect(oldA.extract().getA()).toBe(oldA);