mirror of
https://github.com/swc-project/swc.git
synced 2024-12-25 06:36:08 +03:00
26 lines
588 B
TypeScript
26 lines
588 B
TypeScript
// @target: esnext
|
|
// @useDefineForClassFields: true
|
|
class Animal {
|
|
_sound = 'rustling noise in the bushes'
|
|
|
|
get sound() { return this._sound }
|
|
set sound(val) {
|
|
this._sound = val;
|
|
/* some important code here, perhaps tracking known sounds, etc */
|
|
}
|
|
|
|
makeSound() {
|
|
console.log(this._sound)
|
|
}
|
|
}
|
|
|
|
const a = new Animal
|
|
a.makeSound() // 'rustling noise in the bushes'
|
|
|
|
class Lion extends Animal {
|
|
sound = 'RAWR!' // error here
|
|
}
|
|
|
|
const lion = new Lion
|
|
lion.makeSound() // with [[Define]]: Expected "RAWR!" but got "rustling noise in the bushes"
|