JavaScript не может отправлять электронную почту из веб-браузера. Однако, отступив от решения, которое вы уже пытались реализовать, вы можете сделать то, что соответствует исходному требованию:
отправить сообщение без обновления страницы
blockquote>Вы можете использовать JavaScript для создания значений, которые будут нужны электронной почте, а затем сделать запрос AJAX к серверному ресурсу, который фактически отправит электронное письмо.
Если вы не знакомы с AJAX, быстрый поиск в Google даст вам информацию о том, какие серверные языки / технологии вы используете, так что ваша часть зависит от вас. много информации. Как правило, вы можете быстро запустить его и запустить с помощью функции $ .ajax () jQuery. Вам просто нужно иметь страницу на сервере, которая может быть вызвана в запросе.
Ваша клавиша named
находится под dog
. Поэтому назовите его this.dog.named
let person = {
firstname: "Benjamin",
dog: {
named: "Louie",
owner: function() {
return this.dog.named + " is " + this.firstname + "'s dog'";
}
}
}
console.log(person.dog.owner.call(person));
Функция требует объекта, который имеет свойство firstname
и named
.
Единственный способ добиться желаемого (без изменения этой функции) - создать новый объект, который имеет их и передает это на одну из функций, которые вы упомянули.
console.log(person.dog.owner.call({ firstname: "Benjamin", named: "Louie" }));
this.named
должен быть this.dog.named
, поскольку свойство named
находится внутри объекта dog
.
Здесь:
let person = {
firstname: "Benjamin",
dog: {
named: "Louie",
owner: function() {
return this.dog.named + " is " + this.firstname + "'s dog'";
}
}
}
console.log(person.dog.owner.call(person));