JS. Как обращаться к вложенным функциям?

179
01 октября 2021, 07:30

Как обратиться к вложенной функции и вложенной в нее функции?

Здравствуйте! У меня возник вопрос: как мне обратиться к функции second и как обратиться к функции third.
К third, как Вы можете заметить, нужно обратиться с аргументом = 1.

function first(){
    console.log('1 function - completed');
    function second(){
        console.log('2 function - completed');
        function third(arg){
            if (arg == 1) {
                console.log('3 function - completed');
            }
        }
    }
}
Answer 1

function first() { 
  console.log('1 function - completed'); 
 
  return function second() { 
    console.log('2 function - completed'); 
 
    return function third(arg) { 
      if (arg == 1) { 
        console.log('3 function - completed'); 
      } 
    } 
  } 
} 
 
first()()(1)

или вот так:

function first() { 
  console.log('1 function - completed'); 
 
  function second() { 
    console.log('2 function - completed'); 
 
    function third(arg) { 
      if (arg == 1) { 
        console.log('3 function - completed'); 
      } 
    } 
    third(1); 
  } 
  second(); 
} 
 
first();

смотря что нужно.

Answer 2

Можно через замыкание

function first(){
console.log('1 function - completed');
return function(){
    console.log('2 function - completed');
    return function(arg){
        if (arg == 1) {
            console.log('3 function - completed');
        }
    }
  }
}
let f = first();
f()(1);
READ ALSO
Округление числа до следующего целого числа десятков

Округление числа до следующего целого числа десятков

Возможно ли в JavaScript округлять числа по следующей схеме:

131
Не могу подключить валидацию форм

Не могу подключить валидацию форм

Появляется много ошибок и при нажатии на кнопку добавляется +1 ошибка

65
вычитание первого взноса при условии его минимальной ставки в %

вычитание первого взноса при условии его минимальной ставки в %

Совсем запутался с процентами в наличии имеем wordpress и плагин cost calculator (внутри него условия по сути на JS ) делаю калькуляторы ипотеки с разными...

88
Как в jquery установить maxlength для другого поля text?

Как в jquery установить maxlength для другого поля text?

Нужно в первом input type="text" считать длину и устанавливать ее во втором input type="text" как maxlength

157