НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
⊗jsPmDmThs 356 of 505 menu

Объект this в JavaScript

Сейчас мы будем работать со специальным объектом this, доступным в функции-обработчике события. Этот объект указывает на элемент, в котором произошло событие.

Объект this удобен, когда элемент, в котором произошло событие, и элемент, с которым совершаются действия в результате события, - это один и тот же элемент.

Например, если у нас есть инпут, мы можем привязать к нему обработчик потери фокуса и по наступлению этого события что-то сделать с текстом инпута. Давайте сделаем описанное. Пусть у нас дан инпут:

<input id="elem" value="text">

Давайте получим ссылку на него в переменную elem:

let elem = document.querySelector('#elem');

Привяжем к нему функцию-обработчик события blur:

elem.addEventListener('blur', func);

Внутри этой функции func будет доступен объект this, указывающий на наш инпут:

function func() { console.log(this); // содержит ссылку на наш элемент }

Выведем содержимое атрибута value нашего инпута:

function func() { console.log(this.value); // выведем содержимое атрибута }

Ну, а теперь запишем в инпут какой-нибудь текст:

function func() { this.value = '!!!'; }

Можно использовать и анонимную функцию:

elem.addEventListener('blur', function() { this.value = '!!!'; });

Дан инпут. По получению фокуса этим инпутом запишите в него число 1, а по потери фокуса - число 2. Для обращения у инпуту внутри функции-обработчика используйте объект this.

Дана кнопка, значением которой служит число 1. Сделайте так, чтобы по клику на эту кнопку ее значение каждый раз увеличивалось на единицу.

Русский
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить