How does this work: super()

Hello gentlemen!
I have been working with classes, and now I run into class prototyping! I understand what it does, (super() refers to the parent class and allows the child class to access the parent’s methods and properties) but I do not understand how it works or what it means. Why would you need access to the parent’s properties name and width for the child class? Spudnik is not calling on the parent class, but the PotatoPlanet class. I don’t understand it. The class below extends another class. (You can check chapter 20 for the parent class).

    class PotatoPlanet extends Planet {
        constructor(name, width, potatoType) {
            super(name, width);
            this.potatoType = potatoType;
        getPotatoType() {
            let thePotato = this.potatoType.toUpperCase() + "!!l!!!";
            return thePotato;
    let spudnik = new PotatoPlanet("Spudnik", 12411, "Russet");
    spudnik.gravity = 42.1;

PotatoPlanet calls on the parent class so it doesn’t have to repeat the same work all over again. Since the parent class already handles all the things needed to define name and width on the instance, PotatoPlanet just sends those values up to it to handle that work so all it needs to worry about is the new addition, potatoType.

This is one of the reasons to extend another class: code reuse. No need for you to duplicate work if another class is already doing it.