Kesalahan saat membuat sebuah _instance_
pentingnya: 5
Berikut kode dengan Rabbit
extending Animal
.
Sayangnya, objek Rabbit
tidak dapat dibuat. Apa yang salah? Perbaiki!.
class
Animal
{
constructor
(
name
)
{
this
.
name =
name;
}
}
class
Rabbit
extends
Animal
{
constructor
(
name
)
{
this
.
name =
name;
this
.
created =
Date.
now
(
)
;
}
}
let
rabbit =
new
Rabbit
(
"White Rabbit"
)
;
// Error: this is not defined
alert
(
rabbit.
name)
;
Itu karena konstruktor turunan harus memanggil super()
.
Berikut kode yang benar:
class
Animal
{
constructor
(
name
)
{
this
.
name =
name;
}
}
class
Rabbit
extends
Animal
{
constructor
(
name
)
{
super
(
name)
;
this
.
created =
Date.
now
(
)
;
}
}
let
rabbit =
new
Rabbit
(
"White Rabbit"
)
;
// sekarang oke
alert
(
rabbit.
name)
;
// White Rabbit