Конструктор создает объект

function  Person () {

}
var person = new Person();
person.name = 'Aditya';
console.log(person.name) // Aditya

Person — это конструктор, мы используем new для создания экземпляра объекта person.

прототип

Каждая функция имеет свойство прототипа.
Каждый объект JavaScript (кроме null) будет связан с другим объектом при его создании. Этот объект мы называем прототипом, и каждый объект «наследует» свойства прототипа.

function  Person () {

} 
//Although it is written in a comment,
//but you should pay attention: 
// prototype is a property that only functions have.
Person.prototype.name = 'Aditya' ; 
var person1 = new Person(); 
var person2 = new Person(); 
console .log(person1.name) // Aditya
console .log(person2.name) // Aditya

прото

Каждый объект JavaScript (кроме null) имеет свойство с именем proto , которое указывает на прототип объекта.

function  Person () {

}
var person = new Person();
console.log(person.__proto__ === Person.prototype); // true

конструктор

У каждого прототипа есть атрибут конструктора, указывающий на соответствующий экземпляр конструктора. Прототип указывает на конструктор.

function Person() {
}
console.log(Person === Person.prototype.constructor); // true
function Person() {

}

var person = new Person ();

console .log(person.__proto__ == Person.prototype) // true 
console .log(Person.prototype.constructor == Person) // true 
console .log( Object .getPrototypeOf(person) === Person.prototype) // true

Примеры и прототипы

function  Person () {

}

Person.prototype.name = 'Aditya';

var person = new Person ();

person.name = 'Daisy';
console.log(person.name) // Daisy

delete person.name;
console.log(person.name) // Aditya

В этом примере мы добавили атрибут name к экземпляру объекта person. Когда мы печатаем person.name, результатом, естественно, будет Дейзи. Но когда мы удалили атрибут имени человека, чтение person.name не обнаружит, что атрибут имени — это человек. От человека из объекта-прототипа человека proto, который является человеком. Прототип Посмотрите, к счастью, мы нашли атрибут имени, в результате получается Адитья.