0 / 0 / 0
Регистрация: 05.06.2018
Сообщений: 15

Стрелочная функция

12.12.2020, 19:38. Показов 1376. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть стрелочная функция которая считает количество неактивных студентов в разрезе каждого курса, по условию задания мне нужно переписать ее в виде обычной функции, чтобы функция была интуитивно понятна. Буду благодарен если поможете разобраться.

JavaScript
1
2
3
4
5
6
7
8
let res = students.reduce( (ac, st) => {
    const nc = st.course;
    if (!(nc in ac)) ac[nc] = 0;
    if (!st.active) ac[nc] ++;
    return ac;
}, 
{});
console.log("Количество неактивных студентов в разрезе курсов:", res);
Сам массив для которого эта функция.
JavaScript
1
2
3
4
5
6
7
let students = [
    { name: "Ivan", estimate: 4, course: 1, active: true },
    { name: "Petr", estimate: 3, course: 1, active: false },
    { name: "Alex", estimate: 2, course: 4, active: false },
    { name: "Max", estimate: 5, course: 2, active: true },
    { name: "Anton", estimate: 2, course: 3, active: true },
];
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.12.2020, 19:38
Ответы с готовыми решениями:

стрелочная функция и метод reduce
добрый день! Нашла интересный код, разбираюсь, что да как: <!doctype html> <html> <head> <meta...

Стрелочная функция три раза подряд
Скажите, что значат в этой функции next и action, похоже на то, что функция вызывает в себе еще две функции с аргументами next и action....

Стрелочная функция, принимающая два числа, введённых пользователем, и возвращающая их произведение.
Используя синтаксис стрелочных функций, напишите функцию mul(a,b), которая принимает два аргумента и возвращает произведение этих...

1
Эксперт JS
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
13.12.2020, 06:01
Лучший ответ Сообщение было отмечено MateoRich как решение

Решение

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function calculate(array) {
        let result = {};
        let len = array.length;
        for (let i = 0; i < len; i++) {
            let item = array[i];
            let course = item.course;
 
            if (!(course in result)) 
              result[course] = 0
            if (!item.active) 
              ++result[course];
        }
        return result;
}
 
console.log("Количество неактивных студентов в разрезе курсов:", calculate(students));
Здесь применен странный алгоритм, присваивающий начальные нули курсам по фактическому списку студентов.

Если мы хотим точно показать нули на курсах, где нет активных студентов,
то теоретически более правильно записать нули на каждый курс вообще отдельно от списка студентов.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.12.2020, 06:01
Помогаю со студенческими работами здесь

Стрелочная навигация в консоли. Реально ли
Здравствуйте, уважаемые форумчане. Вот интересует вопрос - можно-ли сделать навигацию в консоли стрелками? Как бы такую менюшку, которая...

Задана показательная функция. Проверить, является ли функция возрастающей или убывающей
Задана показательная функция y=a^x. Проверить, является ли функция возрастающей ( при a&gt;1)или убывающей (при 0 ≤ a ≤ 1)....

Функция поиска в массиве и указатели + функция сортировки и поиск найденного элемента
Написать функцию поиска максимального элемента, передать в неё указатель на начало и конец поиска и возвращать указатель на найденный...

Базовый интерфейс, функция вывода звука, функция для просчёта выражения
ОЧЕНЬ НУЖНА ПОМОЩЬ! Нужно реализовать программу, которая по нажатию клавиши, а после &quot;enter&quot; выполняла такие функции: ...

Функция sqrt: существует более одного экземпляра. Функция перегруженная
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;iomanip&gt; using namespace std; int main(){ float s, p; int c, a; s=0; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: показать затраченные материалы за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В качестве. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru