Вызов alert(alert(1))

219
11 января 2018, 23:49

alert(alert(1)) - выводит undefined Не могу понять почему так выводит, потому что мыслю как то, что в алерте в скобках выведет 1 и соответственно получится alert(1) и в конце останется 1 А также в какой последовательности будет работать код alert( alert(1) && alert(2) );

Answer 1

"Мыслить" - это здорово, но иногда проще прочитать:

https://www.w3schools.com/jsref/met_win_alert.asp

Window alert() Method

Return Value: No return value

(Возвращает: Ничего не возвращает)

var test = alert(1); 
console.log(test);

var test = confirm("Are you sure?"); 
console.log(test);

Answer 2

Функция alert() не возвращает никакого значениа. Это значит, что

alert(1)

не явлается удобным параметром для никакой функции, в том числе самой функции alert():

alert(alert(1))    // alert(1) ошибочный параметр для alert()
Answer 3

выведет сначала 1 (внутренний алерт), а потом undefined (то, что вернул внутренний алерт), и в конце останется undefined (то, что вернет внешний алерт)

READ ALSO
Как запретить установку курсора в поле?

Как запретить установку курсора в поле?

Подскажите, пожалуйста, возможно ли как-то запретить установку курсора в поле? Благодарю!

177
AJAX для нескольких объектов на чистом javascript

AJAX для нескольких объектов на чистом javascript

Добрый деньЕсть элементы, по которым необходимо асинхронно получать информацию и выводить в отдельный блок при нажатии на кнопку, но я понять...

198