задать/переопределить?
Я сказал, что таких свойств нет и задать/переопределить можно любые имена свойств, мне сказали это не правильный ответ! Кто знает возможно меня из-за этого тогда не взяли на работу :)
На вопрос какие же свойства нельзя задать/переопределить, мне сказали ищи в интернете.
С тех пор я не нашел таких свойств которые нельзя задать или переопределить.
А вы знаете о таких свойствах? :)
Пример:
var obj = {};
obj['param_name'] = 'some name';
console.log(obj.param_name);// тут вернет НЕ "some name"
Есть случаи когда:
console.log(obj.param_name);
Вернёт не "some name"?
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Classes/Private_class_fields
Где там сказано про свойства которые нельзя задать/переопределить? Да и вопрос про var obj = {}; а не var obj = class {}
obj.#privateField = 'shit' // err Нельзя переопределить
+ можно задать свойство через defineProperty с writable: false
В другом чате уже дали ответ: var obj = {}; obj.__proto__ = 12345; obj.__proto__2 = 12345; console.log(obj.__proto__);// {} console.log(obj.__proto__2);// 12345 const a = {}; a.__proto__ = String('test'); a.__proto__2 = String('test'); console.log(a.__proto__); // {} console.log(a.__proto__2); // test
Ну тогда это странный вопрос был, мне казалось это был вопрос про то, как сделать приватные поля и методы в js, это имело бы смысл
Ну вот я например до сегодня не знал, что obj.__proto__ нельзя переопределить в число или строку
Да с этим js она каждый день так делится на "до" и "после")
а ты уже так лежал на яхте?
ахаха, но за то лежал😎
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze
Обсуждают сегодня