-
Notifications
You must be signed in to change notification settings - Fork 0
43 Prototypes
Biswajit Sundara edited this page Aug 19, 2023
·
4 revisions
Prototypes are the mechanism by which JavaScript objects inherit features from one another.
- Write this
objectin chrome browser console and then typeuser. - We will observe the name property comes and a bunch of other properties
const user = {
name: 'Biswajit'
}- Similarly for array
const hobbies = ['read','eat','play'] - We can observe there are methods like length, push, pop when we do
hobbies. - For function also
greet.we can observe call, bind, apply etc are popping up
function greet(){
console.log('Hello');
}- It happens to primitive data types also
const username = 'Mark'and then dousername. - We haven't defined those so how those are getting added to our object/variable/function?
- It happens due to prototype
- In Javascript if we create an object or instance of a function
- A prototype object is automatically associated with that object or instance.
- This prototype object is used to look up properties and methods that are not directly present on the object itself.
- We can access the prototype object using
__proto__orObject.getPrototypeOf(myObj)
const user = {
name: 'Biswajit'
}
user.__proto__
Object.getPrototypeOf(user)- When we create an object (e.g user), its proto property points to Object.prototype
user.__proto__ === Object.prototype //returns true- For arrays it points to Array.prototype
hobbies.__proto__ === Array.prototype //returns true