169 похожих чатов

//Task 1. // //Есть массив d1, кнопка b-1, input i-1. //

Напишите функцию f1, которая при нажатии читает i-1
// и добавляет его в массив.
// После чего выводит массив в .out-1.
// Поскольку мы будем выводить массив d1 неоднократно,
// то давайте вывод массива сделаем отдельной функцией, showArr

let d1 = [33,'best', 66, 'best'];
button = document.getElementById('b-1');
in1 = document.querySelector('.in-1');
out = document.querySelector('.out1'),

button.addEventListener('click', function(event) {
if (in1.value !== '') {
in1Value = in1.value;
d1.push(in1Value);
}
function showArr() {
out.innerHTML = d1;
}
showArr();
})
Подскажите такое решение данной задачи правильное?

22 ответов

33 просмотра

Господи как тут не запутаться

Олег- Автор вопроса
Roman Resh
Господи как тут не запутаться

можно подумать, что вы сами сразу стали писать код идеально

Олег- Автор вопроса

Пара вопросов есть, конечно. Функция showArr снаружи не видна а внутри не нужна. Переменная in1Value лезет во внешнюю область видимости и тоже не нужна. А if (in1.value !== '') легко превращается в if (in1.value).

Олег- Автор вопроса
jk
Пара вопросов есть, конечно. Функция showArr снару...

если я пишу функцию снаружи тогда сразу выводится массив и уже не действует измененние значечения инпута , за критику спасибо буду учитывать

Олег
если я пишу функцию снаружи тогда сразу выводится ...

Я так понимаю из этого смутного задания что функция должна использоваться где-то ещё. Поэтому объявить её надо снаружи, а вот выполнять внутри.

Олег- Автор вопроса
Олег- Автор вопроса
Dmitry Dizorov R12
Ну а вдруг.

я знаю это вы так шутите, но я на эти цацки- пецки не поведусь :)

Олег- Автор вопроса
jk
Пара вопросов есть, конечно. Функция showArr снару...

ну и скажу честно для меня области видимости очччень непонятная тема, вернее сказать трудная тема

Олег
ну и скажу честно для меня области видимости оччче...

А что тебе там не понятно? Давай поможем.

Олег- Автор вопроса
Snake
А что тебе там не понятно? Давай поможем.

мне непонятно как понимать в какое место что вставлять, например как вызвать функцию снаружи а объявить ее внутри

Олег- Автор вопроса
Snake
Всё просто - никак)

пардон , наоборот

Олег
пардон , наоборот

Наоборот если, что не понятно? Сверху объявил - снизу использовал. Можно и наоборот, но только в рамках одного блока.

Олег- Автор вопроса
Олег
рамки блока чем обуславливаются

Так же функция main является "невидимой" областью / блоком.

Олег
рамки блока чем обуславливаются

У обычных функций, объявленных через ключевое слово function - есть особенность, называется поднятие. Так например функции, которые объявлены в самом низу файла - автоматически поднимаются в самый верх. Благодаря этому можно сделать подобную вещь test(); ... function test() {}

Похожие вопросы

Обсуждают сегодня

У меня это всегда вопрос вызывало.. Нафига писать код так, чтобы потом ошибки вылавливать?
Nik
44
что за асемблер кста?
Shvabrikk Nya
19
Добрый день! Пробую отловить исключение EConvertError: function _TryTextToDouble(var DoubleVar: Extended; Text: String): Boolean; begin try DoubleVar := StrToFloat...
Kirill Filippenok
19
А где @Grinyaha уважаемый пропал?
Am Ambrion
14
Сделал краткий обзор магазина из статьи и заодно там же записал инструкцию по развёртыванию. https://www.youtube.com/watch?v=8-sE1vNk95Q (чё думаете по звуку? кое-что поменял...
Andrey K
17
вот не понимаю, зачем вообще лезть в осдев, если даже базы не знаешь? хотя бы про загрузку, форматы файлов железо какое-никакое. Ну реально, даже зная работу железа, с условны...
Mixail Frolov
7
Привет, коллеги! Возникла задача ограничить максимальный размер вложений для определённых расширений, например, чтобы для изображений лимит был 10 МБ, а для видео — 100 МБ. Ог...
Andro
1
Можно ли ставить FPC транк, а Лазарь нет?
А Андрей
9
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Shadow Akira ты откуда инфу черпаешь?
One
9
Карта сайта