Как пользоваться оператором if в JS?

112
02 января 2020, 18:00

Создать глобальную переменную senseOfLife = 42. создать функцию, которая будет принимать параметр otherSenseOfLife. Если параметр передать, то функция должна вернуть его. А если не передать, то Фунция должен вернуть глобальную переменную senseOfLife.

 var senseOfLife = 42;
 function showVariable (otherSenseOfLife) {
   if (otherSenseOfLife == 42);
   return senseOfLife;
 }
 showVariable();
Answer 1

Здесь не выполняется задача

Если параметр передать, то функция должна вернуть его.

Вместо этого проверяется странное условие

if (otherSenseOfLife==42); 

и если оно выполняется - ничего не делается.

При этом всегда возвращается значение глобальной переменной.

Вместо этого нужно было вернуть саму переменную otherSenseOfLife.

Для проверки количества переданных параметров можно воспользоваться свойством length объекта arguments

var senseOfLife = 42; 
 
function showVariable(otherSenseOfLife) { 
  if (arguments.length > 0) 
    return otherSenseOfLife; 
 
  return senseOfLife; 
} 
console.log(showVariable()); 
console.log(showVariable(1));

Answer 2

Вам нужно проверить, передан ли аргумент в функцию, а вы проверяете его значение. Если аргумент не был передан в функцию, то он будет содержать undefined

var senseOfLife = 42;
function showVariable (otherSenseOfLife) {
    // если функцию вызвали без аргументов showVariable();
    if (otherSenseOfLife == undefined) {
        return senseOfLife;
    }
    // если функцию вызвали с аргументом, например, showVariable(684);
    return otherSenseOfLife;
}
showVariable(); // Вернет 42
showVariable(8); // Вернет 8
Answer 3

Современный JavaScript позволяет использовать в функциях параметры по умолчанию:

var senseOfLife = 42; 
 
function showVariable(otherSenseOfLife = senseOfLife) { 
  return otherSenseOfLife; 
} 
 
console.log(showVariable()); 
console.log(showVariable(43));

То есть если параметр не передан, ему будет присвоено значение переменной senseOfLife.

READ ALSO
Исправить ошибку js

Исправить ошибку js

есть такая форма

111
“Подхват” значения из input

“Подхват” значения из input

Не могу реализовать так, чтобы кнопка Купить брала значение из инпута, именно то которое прописано в поле, но когда смотрю код элемента, у этого...

119
Калькулятор умножения и сложения

Калькулятор умножения и сложения

Есть калькулятор, не пойму как перемножить кол-во на стоимость курса затем сложиь значения всех полей и вывести в итого, подскажите плизз

114
Сортировка и по убыванию, и по возрастанию в зависимости от значения true или false VUE JS

Сортировка и по убыванию, и по возрастанию в зависимости от значения true или false VUE JS

Нужно в зависимости от того, какой флаг у чекбокса true или false, сортировать массив по возрастанию числа и наоборот

105