В правом верхнем углу проблем область является кнопкой фильтра (это похоже на три стрелки, указывающие направо), нажимая, который позволит Вам настроить представление. Можно отфильтровать элементом, таким как класс, который Вы редактируете или рабочий набор, тип проблемы (например, проблемы Java, проблемы файла компоновки и т.д.) и серьезностью. Это на самом деле очень настраивается.
См. http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.user/concepts/cprbview.htm для деталей и снимков экрана.
Он выполняет функцию, которую возвращает f .
f возвращает функцию, которая вызывает предупреждение, которое отображает вывод функции, которую вы указали в качестве параметра для f .
РЕДАКТИРОВАТЬ: Просто замените некоторые части, чтобы было удобнее для глаз, и вы увидите себя:
var f = function(a) {
var output = a();
var alertCaller = function() {
alert(output);
};
return alertCaller;
};
var helloWorld = function() { return "Hello World"; }
var result = f(helloWorld); //f takes a function as argument
result(); //result must be a function
Это просто функция более высокого уровня, которая в данном случае на самом деле не нужна.
f
- это функция, которая принимает другую функцию (называется a
]), а возвращает вновь сгенерированную функцию, которая оценит a
и покажет окно предупреждения, показывающее результат.
Таким образом, в нижней строке вызывается f (передавая анонимную функцию который печатает «Hello World»), затем сразу же оценивает анонимную функцию, возвращаемую f
, которая оценивает переданный аргумент (который, как вы можете видеть, возвращает «Hello World»), а затем всплывает окно предупреждения.
Опубликованный код функционально эквивалентен
alert("Hello World");
, но есть два дополнительных элемента, которые делают его более сложным:
Но поскольку ни одно из этих преимуществ на самом деле не используется во фрагменте кода, я понимаю, почему вы запутались.
Но поскольку ни одно из этих преимуществ на самом деле не используется во фрагменте кода, я могу понять, почему вы запутаться.
Но поскольку ни одно из этих преимуществ на самом деле не используется во фрагменте кода, я могу понять, почему вы должны запутаться.
Это очень сложный способ получить окно предупреждения для отображения «Hello world». Функции являются элементами первого класса в javascript, и их можно передавать другим функциям и из них в качестве параметров.
Этот код создает генератор функций. Первая функция (ссылка на которую хранится в f
) принимает ссылку на другую функцию ( a
). Затем f
создает функцию, которая закрывает параметр a
и возвращает ссылку на новую функцию, которая будет предупреждать возвращаемое значение a
вызванного результата.
] Наконец, этот беспорядок вызывается встроенной функцией, и ее результат немедленно вызывается (с открывающей и закрывающей скобками в конце).
f
назначается функция, которая принимает функцию в качестве аргумента, вызывает ее и отображает ее возвращаемое значение в предупреждении
. Затем вызывается f
с функцией, которая при вызове возвращает строку «Hello World»
, в результате чего Hello World
отображается в предупреждении.