JS OOP: 22. Class: Private method

by istiq20

HTML

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Class: private method</title>
  </head>
  <body>
    <script>
      class Person {
        say(name) {
          if (name) {
            this.#sayWithName(name);
          } else {
            this.#sayWithoutName();
          }
        }

        #sayWithoutName() {
          console.info("Hello");
        }

        #sayWithName(name) {
          console.info(`Hello ${name}`);
        }
      }

      const eko = new Person();
      eko.say("Joko"); // Hello Joko

      //jika kita coba akses dari luar class
      //eko.#sayWithoutName(); // Error
    </script>
  </body>
</html>