
Привет всем! Сегодня я хотел поделиться с вами своим опытом прохождения интервью на позицию frontend-разработчика. Во время собеседования мне задали интересную задачу, и я хотел рассказать вам, как я справился с ней.Задача была следующей⁚ я должен был написать функцию, которая принимает двумерный массив и возвращает новый массив, содержащий только те подмассивы, которые не пустые и состоят из элементов одного типа.Перед тем, как начать писать код, я приступил к анализу задачи и составил план действий⁚
1. Создать новый пустой массив, который будет содержать подмассивы, удовлетворяющие условиям задачи.
2. Перебрать каждый подмассив в исходном массиве.
3. Проверить, не является ли подмассив пустым.
4. Если подмассив не пустой٫ проверить٫ состоят ли все его элементы из одного типа.
5. Если условия выполняются, добавить подмассив в новый массив.
Итак, приступим к написанию кода⁚
В данном коде я создал функцию `filterArrays`, которая принимает двумерный массив `arr`. Я также создал пустой массив `result`, в который будут добавляться подмассивы, удовлетворяющие условиям задачи. Затем я использовал цикл `for` для перебора каждого подмассива в `arr`. На каждой итерации я проверял, не является ли подмассив пустым. Если он не пустой, то я создал переменные `isHomogeneous` и `type`, в которых будут сохраняться информация о том, состоят ли элементы подмассива из одного типа. Затем я использовал еще один цикл `for` для проверки типа каждого элемента подмассива. Если хотя бы один элемент имел другой тип, то переменная `isHomogeneous` принимала значение `false`. Наконец, если все элементы подмассива были одного типа, я добавлял его в массив `result`. В итоге, я вызвал функцию `filterArrays` с исходным массивом `[1, 5, 4], ['a', 3, 5], ['b'], [], ['1', 2, 3]` и вывел результат в консоль. Результатом был новый массив, который содержал только подмассивы `[[1, 5, 4], ['b']]`, удовлетворяющие условиям задачи.
Таким образом, я успешно решил данную задачу и продемонстрировал свои навыки в области frontend-разработки. Благодаря опыту, накопленному во время решения этой задачи, я стал более уверенным в своих знаниях и навыках.
Я надеюсь, что мой опыт поможет вам подготовиться к интервью вас на позицию frontend-разработчика. Удачи!