#javascript
alert(alert(1)) - выводит undefined Не могу понять почему так выводит, потому что мыслю как то, что в алерте в скобках выведет 1 и соответственно получится alert(1) и в конце останется 1 А также в какой последовательности будет работать код alert( alert(1) && alert(2) );
Ответы
Ответ 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); Bозвращает: var test = confirm("Are you sure?"); console.log(test); Bозвращает: function multiply(a, b) { return a * b; } console.log(multiply(2, 3)); Не возвращает: function multiplyAndShow(a, b) { var c = a * b; document.getElementById("result").innerText = c; } console.log(multiplyAndShow(2, 3)); emptyОтвет 2
выведет сначала 1 (внутренний алерт), а потом undefined (то, что вернул внутренний алерт), и в конце останется undefined (то, что вернет внешний алерт)Ответ 3
Функция alert() не возвращает никакого значениа. Это значит, что alert(1) не явлается удобным параметром для никакой функции, в том числе самой функции alert(): alert(alert(1)) // alert(1) ошибочный параметр для alert()
Комментариев нет:
Отправить комментарий