Avoid the use of the __proto__ property

This page is not yet available in Spanish. We are working on its translation.
If you have any questions or feedback about our current translation project, feel free to reach out to us!

Metadata

ID: javascript-best-practices/no-proto

Language: JavaScript

Severity: Warning

Category: Error Prone

Description

The __proto__ property has been deprecated as of ECMAScript 3.1.

Use a suitable alternative to __proto__ like Object.getPrototypeOf and Object.setPrototypeOf instead.

Non-Compliant Code Examples

var a = test.__proto__;
var a = test['__proto__'];
var a = test[`__proto__`];
test[`__proto__`] = function () {};

Compliant Code Examples

var a = test[__proto__];
var __proto__ = null;
foo[`__proto`] = null;
foo[`__proto__\n`] = null;
class C { #__proto__; foo() { this.#__proto__; } }
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis