Добрый день! Задача по сортировке(по счёту №4). Ссылка:
https://learn.javascript.ru/closures-usage
Прошу пояснить такой момент. В задаче с сортировкой, я не понимаю, как работает эта функция
function byField(field) {
return function(a, b) {
return a[field] > b[field] ? 1 : -1;
}
}
Каким образом, в a[field] попадает Вася, а в b[field] попадает Петя? .... И, почему здесь, всё работает через точку?
// по полю name (Вася, Маша, Петя)
users.sort(function(a, b) {
return a.name > b.name ? 1 : -1;
});
// по полю age (Маша, Вася, Петя)
users.sort(function(a, b) {
return a.age > b.age ? 1 : -1;
});