Как правильно создать функцию в прототипе функции? Что у меня есть это:Создание функций в прототипах функций для Javascript
<body>
<p id="demo"></p><script>
function person(first, last, age, eye) {
this.firstName = first;
this.lastName = last;
this.age = age;
this.eyeColor = eye;
}
person.prototype.name = function() {
return {
myFunc: function() {
this.firstName + " " + this.lastName;
}
}
};
var myFather = new person("John", "Doe", 50, "blue");
document.getElementById("demo").innerHTML =
"My father is " + myFather.name().myFunc;
</script>
</body>
При запуске этого он возвращает «Мой отец функция() {this.firstName +» «+ this.lastName;}», но я ожидал, что Джон Доу.
вы не называя 'myFunc', вы просто вернув саму функцию. если вы хотите вызывать 'myFunc', тогда это должно быть' myFather.name(). myFunc() ' –
Что такое« прототип функции »? – Bergi
@MarcB: Да, [хотя даже это не сработает] (https://stackoverflow.com/questions/16502467/prototype-deep-scope-of-this-to-access-instances-scope) – Bergi