<MyRusakov.ru />

Профессия Web-разработчик

Профессия Web-разработчик

Этот комплект за 8 месяцев превратит Вас в Web-разработчика с нуля. Учиться достаточно 1 час в день.

Начнёте Вы с HTML, CSS и вёрстки сайтов. Потом перейдёте к программированию и JavaScript. Затем изучите PHP, MySQL, SQL, Python. Изучите Web-фреймворки Laravel и Django. Создадите 5 своих сайтов для портфолио.

Комплект содержит:

- 540 видеоуроков

- 110 часов видео

- 1205 заданий для закрепления материала из уроков

- 5 финальных тестов

- 7 сертификатов

- 12 Бонусных курсов

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Форум сайта MyRusakov.ru

Вопрос от начинающего (возможно тупой)
19.12.2016 21:04:30 Вопрос от начинающего (возможно тупой) Сообщение #1
webded

webded

Новичок

Новичок

Дата регистрации:
19.12.2016 20:33:01

Сообщений: 2

Здравствуйте. 

Что означает "возвращает"? Кто нибудь может растолковать простым языком? В самом начале такой спотыкач, и нигде нет ответа.
Профиль
20.12.2016 23:04:12 Вопрос от начинающего (возможно тупой) Сообщение #2
lll

lll

Эксперт

Эксперт

Дата регистрации:
17.06.2016 22:32:32

Сообщений: 134

Привет!!! Если ты про функции: то они возвращают результат своей работы.
например у тебя функция складывает числа, то в конце своей работы она возвратит результат суммирования.
Профиль
21.12.2016 13:02:10 Вопрос от начинающего (возможно тупой) Сообщение #3
webded

webded

Новичок

Новичок

Дата регистрации:
19.12.2016 20:33:01

Сообщений: 2

Впервые хоть кто-то без прикола ответил! Значит можно спросить поподробнее?

То что функция, и не только функция, возвращает результат работы - об этом как раз и говорится везде.

Но вот, к примеру, методы массива.

Метод push - добавляет элемент в конец массива. Возвращает длину нового массива, т.е. число - результат работы, но ведь меняется и исходный массив - тоже результат работы, но это уже не возвращает почему-то.

Ну ладно, оставим методы. Вот функция. 

functioncheckAge(age) {    
if (age > 18) { 
       return true;
}    
else {       
     // ...     
      return confirm(Есть?)
}
};

И описание её работы:

Следующая функция возвращает true, если параметр age больше 18. В ином случае она задаёт вопрос посредством вызова confirm и возвращает его результат.

Т. е. функция в зависимости от условия может выдать тот или иной результат. 

Вот тут и непонятка. Мне как обычному человеку "выдать результат - понятно",  "Возвращает" - это что, сленг? Или в этом есть какое-то определённое действие, которое отличается от простого "выдать результат". 

И почему в случае с методом результатов два, а возвращает только один. Для чего?
Профиль
21.12.2016 18:41:06 Вопрос от начинающего (возможно тупой) Сообщение #4
lll

lll

Эксперт

Эксперт

Дата регистрации:
17.06.2016 22:32:32

Сообщений: 134

Ну обычно говорят возвращает т.к. ключевое слово return переводится "вернуть".
А так называй как хочешь. 
Профиль
21.12.2016 18:45:30 Вопрос от начинающего (возможно тупой) Сообщение #5
lll

lll

Эксперт

Эксперт

Дата регистрации:
17.06.2016 22:32:32

Сообщений: 134

Ну у тебя же условие стоит!!  если больше 18 то вернет это, иначе вернет другое.
return может быть сколько угодно, главное условие задать.
return может и вообще не быть.
функция, что то сделала и все, добавила элемент к масиву.
тут главное понять, что функция может что то сделать и все. А иногда требуется вернуть результат ее работы. 
Почитай подробнее про функции.
Профиль
07.01.2017 12:48:30 Вопрос от начинающего (возможно тупой) Сообщение #6
shmel010201

shmel010201

Освоившийся

Освоившийся

Дата регистрации:
03.05.2016 17:31:25

Сообщений: 23

Там написано, что если переменная "Age" больше 18, то вам вернет истину (true)
if(age > 18) {
return true;
}
иначе, вас попросит подтвердить
else {
return confirm(Есть?);
}
Профиль
22.01.2017 06:21:42 Вопрос от начинающего (возможно тупой) Сообщение #7
SuperSonicFire

SuperSonicFire

Новичок

Новичок

Дата регистрации:
22.06.2016 09:29:52

Сообщений: 2

Ваш вопрос отнюдь не тупой, а вполне естественный, так что исправьте заголовок темы на "Что значит "вернуть значение?"", чтобы другие люди, кого интересует данный вопрос, могли быть направлены на эту страницу через поисковик.

Как Вы и сказали, действительно мало где нормально объяснено, что это значит. Исправим это.

"Возвратить значение" означает завершить выполнение функции с таким результатом, который можно присвоить с помощью оператора присваивания.

Посмотрите следующий пример:

function sum(a, b){
 return a + b; 
}

Теперь, если Вы вызовите функцию

var a = 3;
var b = 2;
var c = sum(a, b);

у Вас всё нормально сработает, потому что функция sum(a, b) в результате выполнения превратися в a+b, т. е. в 5. То есть смотрите: Вы даёте функции значения a и b на вход, а она Вам даст в ответ, (это и называется "возвращает" выходное значение, когда вы её вызовите.  

Соврешнно другое дело здесь:

function sum (a, b){
var x = a + b;
}

Теперь, если Вы вызовите


var a = 3;
var b = 2;
var c = sum(a, b);

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

var a = 3;
var b = 2;
sum(a, b);
var c = x;

потому что переменная x, будучи объявленной внутри функции является локальной, за пределами фукции не видна.
Таким образом, последний пример бесполезен на практике. 

Ещё момент: под "возвратить" имеется ввиду "возвратить значение", а не переменную и не объект и ни что другое.  
Если модифицировать последний пример до 

function sum (a, b){
var x = a + b;
return x;
}

то c = sum(a + b) уже  заработает. Однако переменная x будет по-прежнему не видна за пределами фукцнии, потому что return x; возвращает значение x, а не саму эту переменную. Современные IDE, например WebStorm, дадут Вам предупреждение о том, что переменная x - лишняя. Поэтму ввод этой переменной внутри фукнции в данном случае тоже бесполезен и самый первый пример является идеальным. 

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

function sum(a, b){
 return a + b; 
 return a - b;
}

var a = 3;
var b = 2;
var c = sum(a, b);

перенная c у Вас будет равна по-прежнему 5. Современные IDE дадут Вам предупреждение вроде "Unreachable statement"  - "Недосягамое выражение".
Профиль