Как можно внести изменения в представленный код, чтобы при указании несуществующего имени картинки появлялось сообщение об ошибке в консоли? Вот какой код я использую: ```javascript function loadImage(url, callback) { setTimeout(function() { let image = document.createElement('img'); let err = null; image.addEventListener('error', function() { err = 'Error loading image'; callback(null, err); }); image.src = url; }, 1000); } loadImage('/home/artemiy/JS/5.jpeg', function(image, err) { if (err) { console.log('Произошла ошибка: ' + err); } else { document.body.append(image); } }); ```
Для добавления проверки на существование картинки можно внести следующие изменения в представленный код: ```javascript function loadImage(url, callback) { setTimeout(function() { let image = document.createElement('img'); let err = null; image.addEventListener('error', function() { err = 'Error loading image'; callback(null, err); }); image.addEventListener('load', function() { callback(image, err); }); image.src = url; }, 1000); } loadImage('/home/artemiy/JS/5.jpeg', function(image, err) { if (err) { console.log('Произошла ошибка: ' + err); } else { document.body.append(image); } }); ``` Теперь, если при указании пути к изображению произойдет ошибка загрузки, будет выведено сообщение "Произошла ошибка: Error loading image" в консоли.
JS на странице вообще-то не может обращаться к произвольным файлам на машине клиента - иначе сайты бы брутили важные пути к файлам, чтобы их скопировать и отослать на сервер.
JS может обращаться только к файлам, которые пользователь поместил в поле выбора файла, или к файлам, доступным в Сети по URL (с поправкой на возможный контроль origin).
По идее, ты можешь попробовать обращаться по относительному пути, а не по абсолютному - если скрипт запускается из сохранённого HTML-файла, то он может суметь это сделать, но вроде там тоже есть ограничения на путь.