Доступ к данным другой функции JS

Это пример из старого ООП в JS, здесь Developer наследуется от Human.

Объясните пожалуйста как Developer получает доступ к полю name в Human (догадываюсь что через метод apply(), но этот метод просто предназначен для выполнения функции в определенном контексте, как он позволяет Developer получить доступ к name ? )

function Human(name) {
    this.name = name
}


function Developer(name, skills) {
    Human.apply(this,arguments)
    this.skill = skills
}


let petro = new Developer('bob','js');
console.log(petro.name); //bob
console.log(petro.skill); //js


Ответы (1 шт):

Автор решения: Igor

Эта строчка

Human.apply(this,arguments)

то же самое, что

this.name = name

Код функции Human выполняется в контексте this конструктора Developer.

→ Ссылка