javascript-tutorial / en.javascript.info

Modern JavaScript Tutorial
https://javascript.info
Other
23.33k stars 3.84k forks source link

__proto__ deprecation #3601

Open bevand10 opened 10 months ago

bevand10 commented 10 months ago

https://github.com/javascript-tutorial/en.javascript.info/blob/285083fc71ee3a7cf55fd8acac9c91ac6f62105c/1-js/99-js-misc/01-proxy/article.md?plain=1#L712

As per MDN and ECMASCRIPT, use of this approach seems to be deemed legacy and will at some point be withdrawn from browsers.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/proto

https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-object.prototype.__proto__

The alternative seems to be Object.create ?

// considered bad practice
let admin = {
  __proto__: userProxy,
  _name: "Admin"
};

// recommended
let admin = Object.create(userProxy);
admin._name = 'Admin'