Menu
CoddyTech

Method Privat

Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan JavaScript di Coddy. Pelajaran 19 dari 56.

method privat dalam class JavaScript memungkinkan kamu menyembunyikan detail implementasi dan mencegah akses eksternal ke fungsionalitas internal.

Mulai dari ES2022, method privat dapat didefinisikan menggunakan awalan #:

class Counter {
  #count = 0;
  
  // Buat method privat
  #increment() {
    this.#count++;
  }
  
  // Method publik yang menggunakan method privat
  addOne() {
    this.#increment();
    return this.#count;
  }
}

Mari buat sebuah instance Counter:

const myCounter = new Counter();

Kita dapat memanggil method publik:

console.log(myCounter.addOne()); // output: 1

Namun, mencoba mengakses method privat secara langsung akan menyebabkan error:

myCounter.#increment(); // Error: method privat tidak dapat diakses dari luar class

method privat membantu menjaga enkapsulasi dengan menyembunyikan detail implementasi internal dari dunia luar.

challenge icon

Tantangan

Kamu diberi sebuah class MessageBox yang menyimpan pesan. Tugasmu adalah menambahkan method privat bernama #isValidMessage(text) yang memvalidasi pesan. Method ini harus:

  • Mengembalikan true jika teks tidak kosong dan panjangnya kurang dari 100 karakter
  • Mengembalikan false jika tidak

Coba sendiri

import { MessageBox } from './messageBox.js';

// Menggunakan kotak pesan
const box = new MessageBox();

console.log(box.setMessage("Hello"));    // "Message set!" (menggunakan #isValidMessage)
console.log(box.setMessage(""));         // "Invalid message!" (menggunakan #isValidMessage)
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pemrograman Berorientasi Objek

Latihan sendiri: Compiler JavaScript online