Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Условия в функции (https://javascript.ru/forum/misc/64695-usloviya-v-funkcii.html)

DivMan 30.08.2016 11:10

Условия в функции
 
Я так понимаю, если хоть одно условие сработает, то функция будет возвращать false, а как игнорируется return true, если оно не в условие?

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

var taxi = {
			make: 'Webville Motors',
			model: 'Taxi',
			year: 1955,
			mileage: 281341
		}

		function prequal(car){
			if(car.mileage > 10000){
				return false
			}
			else if(car.year > 1960){
				return false
			}

			return true;
		}

		var worthAlook = prequal(taxi)

		if(worthAlook){
			console.log('You gotta check out this ' + taxi.make + " " + taxi.model)
		}

		else{
			console.log('You should really pass on the ' + taxi.make + " " + taxi.model)
		}

ksa 30.08.2016 11:32

Цитата:

Сообщение от DivMan
Ведь обычно функция должна возвращать, то, что указано в return последним

У тебя не верные сведения о работе функций. ;)

DivMan 30.08.2016 11:46

Почему?

Dilettante_Pro 30.08.2016 12:34

DivMan,
Какой return первым подвернется по условиям, такой и закончит работу функции и вернет значение.

ksa 30.08.2016 13:40

Цитата:

Сообщение от DivMan
Почему?

Это уже у тебя спросить стоит. :D
Почему ты вдруг решил, что "последний" return главный?

Strongman 30.08.2016 13:44

Какой return сработает, такой и выйдет из функции.

ksa 30.08.2016 13:45

DivMan, или ты путаешь свой пример с таким примером

function test(){
	return 0,1,2,3,4,5;
};
alert(test());

Тут действительно
Цитата:

Сообщение от DivMan
функция должна возвращать, то, что указано в return последним

А последним там указано 5.

Но это опять не "заслуга" return... А оператора "запятая".


Часовой пояс GMT +3, время: 20:30.