Что такое JavaScript и как он применяется в браузере
Определение и назначение JavaScript
JavaScript - это язык программирования, который выполняется в браузере пользователя. С его помощью веб-страницы становятся интерактивными: реагируют на клики, отправляют данные, обновляют содержимое без перезагрузки. Основная задача JavaScript - управлять поведением страницы и взаимодействовать с пользователем.
Простой пример - вывод сообщения в модальном окне:
<script>
alert('Привет! Это JavaScript.');
</script>как работает js (как работает javascript)
Этот код можно поместить внутрь HTML-документа. При загрузке страницы браузер выполнит команду alert и покажет окно с текстом.
Для отладки и вывода информации разработчики используют console.log:
console.log('Сообщение в консоли');что делает js (что такое javascript и что он делает)
Результат появляется в панели разработчика (F12 → Console).
Как добавить JavaScript в HTML напрямую?
Код помещают между тегами <script> и </script>. Обычно такой блок ставят в конце тела страницы перед закрывающим тегом </body>, чтобы скрипт выполнялся после загрузки всего содержимого.
<!DOCTYPE html>
<html>
<body>
<h1>Страница</h1>
<script>
document.querySelector('h1').textContent = 'Изменено JavaScript';
</script>
</body>
</html>Этот код находит заголовок и заменяет его текст.
Типичная ошибка: попытка обратиться к DOM-элементу до его появления в документе. Решение - перенести скрипт в конец страницы или использовать событие DOMContentLoaded.
Как подключить внешний файл JavaScript?
Создаётся отдельный файл (например, script.js) и подключается с помощью атрибута src тега <script>.
<script src="script.js"></script>Файл script.js:
let name = 'Алексей';
console.log('Привет, ' + name);Результат в консоли: Привет, Алексей.
Проблема: если файл не загрузился (неверный путь, ошибка сервера), консоль покажет ошибку сети. Проверить путь и права доступа к файлу.
Как реагировать на действия пользователя с помощью событий?
Пример - обработчик клика по кнопке:
<button id="myBtn">Нажми меня</button>
<script>
document.getElementById('myBtn').addEventListener('click', function() {
alert('Кнопка нажата!');
});
</script>Теперь при клике появляется окно.
Ошибка: забыть обернуть код в DOMContentLoaded, если скрипт расположен в <head>. Тогда элемент может отсутствовать, и событие не привяжется. Используйте document.addEventListener('DOMContentLoaded', function() { ... }).
Как изменить стили элементов через JavaScript?
Доступ к свойству style:
let element = document.querySelector('.box');
element.style.backgroundColor = 'red';Этот код делает фон элемента красным.
Также можно добавлять и удалять классы:
element.classList.add('active');
element.classList.remove('inactive');Предварительно в CSS должны быть определены классы.
Проблема: попытка изменить свойства до того, как элемент существует. Решение - проверить, что element не равен null.
Расширенные примеры использования JavaScript
Ниже приведены примеры кода с результатами, которые показывают разнообразие возможностей языка.
Работа с массивами и методами
let numbers = [10, 20, 30, 40];
let doubled = numbers.map(n => n * 2);
console.log(doubled);[20, 40, 60, 80]
Методы map, filter, reduce позволяют преобразовывать данные без циклов.
Асинхронные запросы к серверу
fetch('https://api.example.com/data')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Ошибка:', error));Результат - вывод данных из API в консоль. Если сервер недоступен, сработает catch.
Создание и добавление элементов в DOM
let newDiv = document.createElement('div');
newDiv.textContent = 'Новый блок';
newDiv.className = 'card';
document.body.appendChild(newDiv);После выполнения в конце страницы появится блок с текстом «Новый блок».
Использование таймеров (setTimeout)
setTimeout(function() {
console.log('Выполнено через 2 секунды');
}, 2000);Результат появляется в консоли спустя 2 секунды.
Объекты и методы
let user = {
name: 'Мария',
greet: function() {
return 'Привет, ' + this.name;
}
};
console.log(user.greet());Привет, Мария
Методы объектов позволяют описывать поведение.
Обработка ошибок (try...catch)
try {
let result = riskyFunction();
console.log(result);
} catch (error) {
console.log('Произошла ошибка: ' + error.message);
}Если функция riskyFunction выбросит исключение, управление перейдёт в блок catch.
Динамическая подгрузка скриптов
let script = document.createElement('script');
script.src = 'https://cdn.example.com/library.js';
document.head.appendChild(script);
script.onload = function() {
console.log('Библиотека загружена');
};Этот подход часто используется для загрузки сторонних скриптов по требованию.