Explorar el Código

05 console.log and return

me@helium hace 8 años
padre
commit
8f5904d687
Se han modificado 1 ficheros con 24 adiciones y 0 borrados
  1. 24 0
      05.md

+ 24 - 0
05.md

@@ -228,6 +228,9 @@ function add(a,b)
 
 alert(add(4,5,6))
 alert(add(4,5,6,7));
+
+prompt("Введите число", "0");
+prompt("Введите число");
 ```
 
 **Задание**
@@ -238,6 +241,7 @@ alert(add(4,5,6,7));
 
 Для возврата значения используется `return`. У него три основных свойства:
 - Собственно возврат значения во внешний код. Выражение после `return` *вычисляется в контексте функции*:
+
 ```javascript
 debugger;
 function add(a,b)
@@ -250,6 +254,7 @@ alert(add(3,4))
 после чего *значение* попадает в место, где функция была вызвана (в `alert`)
 - Прекращение выполнения функции
 - `return` без параметра возвращает *ничего*, т. е. `undefined`:
+
 ```javascript
 debugger;
 function bigAndWeirdFunction()
@@ -265,3 +270,22 @@ bigAndWeirdFunction();
 bigAndWeirdFunction();
 bigAndWeirdFunction();
 ```
+
+### `console.log` и `return`
+
+При отладке вы видите в одной консоли  *вычисленное значение выражения* (например `2 + 2` или `prompt("Введите число")`) и вывод `console.log`. 
+`console.log` *просто выводит текст* в консоль, как `document.write` - в окно браузера, далее вы с этим ничего не можете сделать (почти). 
+**Выражение** же может быть вставлено в код и являться частью другого выражения:
+
+```javascript
+2 + 2
+var a = 2 + 2
+prompt("Введите число");
+var num = prompt("Введите число");
+
+var b;
+    b = console.log(a); //неработает, метод log объекта console возвращает undefined, т. е. ничего
+    b = a; //работает
+```
+
+Что бы отличить результат выражения от вывода console.log, отметьте что возле значения выражения есть знак <.