Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Что за чудная конструкция (https://javascript.ru/forum/misc/31168-chto-za-chudnaya-konstrukciya.html)

lancer 29.08.2012 01:11

Что за чудная конструкция
 
Разбираю статейку, там в коде такая конструкция есть. Рекурсия - нет, замыкание - нет, загуглить такой заворот даже не представляю как.

function(next) {
    next();
}

Gvozd 29.08.2012 01:28

В JavaScript функции являются объектами первого класса
То есть их можно назначать в переменные, использовать как объекты(вызывать методы, добавлять свойства), либо передавать как параметры в функции
В данном примере функция принимает в качестве аргумента другую функцию, и выполняет ее.
Это может использоваться, для того чтобы легко, и гибко изменять поведение функции
Например в методе .sort() можно сортировать не только простые примитивы(числа, строки), но и что угодно, каким угодно способом, передав для этого метода функцию умеющую сравнивать два элемента(например сравнивать две строки не лексикографически, а по количеству гласных)


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