class MyClass {
#val; // Default private field value
constructor(initialValue = 1000) { // Provide a default value
this.#val = initialValue;
}
// Getter to expose the value as read-only
get value() {
return this.#val;
}
}
const obj1 = new MyClass(); // Uses default value (1000)
console.log(obj1.value);
// obj.val = 23; // Error: Cannot set property 'val'
const obj2 = new MyClass(300); // Uses provided value (5000)
console.log(obj2.value);
/*
run:
1000
300
*/