Лексический анализ - на основе входящей последовательности символов выделяются "слова" языка;
Синтаксический анализ - входящая последовательность слов сопоставляется с правилами построения "предложений" на языке программирования и преобразуется в массив AST-деревьев (абстрактное синтаксическое дерево);
Выполнение (интерпретация) кода на основе массива AST-деревьев.
Пример: у статьи на сайте есть категория и подкатегория. Связь статей с категориями/подкатегориями "многие к одному" Связь категории и подкатегории "один ко многим".
Задача: в html форме на странице создания/редактирования статьи вывести список подкатегорий, сгруппированный по категориям.
Примечание: в моем случае у статьи может отсутствовать категория и подкатегория, у подкатегории - категория
После того, как проект открыт в vs-codium, с помощью команды в терминале в корне проекта:
npm ci
мы подтянули пакеты, в числе которых jest.
Jest представляет собой фреймворк для налаживания юнит теститорвания (junit testing) JavaScript. Unit testing - это тестирование отдельных модулей исходного кода.
Можно использовать фигурные скобки для объявления массива прямо в команде, напр. выполните в терминале команду:
echo a-{1,2}
получим ответ:
echo a-{1,2}
- заметьте. что значения должны быть перечислены без пробела, иначе то что в фигурных скобках будет воспринято просто как несколько строк разделенных пробелами.