console.log(jonas.__proto__);

console.log(jonas.__proto__.__proto__);
console.log(jonas.__proto__.__proto__.__proto__);

console.dir(Person.prototype.constructor);

const arr = [3, 6, 4, 5, 6, 9, 3];
console.log(arr.__proto__);
console.log(arr.__proto__ === Array.prototype);

console.log(arr.__proto__.__proto__);

Array.prototype.unique = function () {
return [...new Set(this)];
};
console.log(arr.unique());

- This is not a good way to add a prototype method.
Because 1. JavaScript could update the method with the same name, then the bug can occur. 2. other developers in the team can use the same name, then it also can make some bugs.
const h1 = document.querySelector('h1');
console.dir(x => x + 1);

- It is a huge prototype chain.