Why is private field in JavaScript not accessible using bracket ([]) notation but accessible using dot (.) notation?
Using dot notation:
class MyClass { #privateField = 42; publicMethod() { console.log(this.#privateField); } } const obj = new MyClass(); obj.publicMethod(); // 42Using bracket notation:
class MyClass { #privateField = 42; publicMethod() { console.log(this['#privateField']); } } const obj = new MyClass(); obj.publicMethod(); // undefined