0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>Объекты с динамической структурой часто используются для построения контекста или хранения данных. Например, так происходит, когда мы добавляем в них поля во время исполнения программы. Давайте напишем вспомогательный тип для построения такого объекта:</p>
1
<p>Объекты с динамической структурой часто используются для построения контекста или хранения данных. Например, так происходит, когда мы добавляем в них поля во время исполнения программы. Давайте напишем вспомогательный тип для построения такого объекта:</p>
2
<p>Ключ Key примет перебором все значения из K. В свою очередь, K является подмножеством string, а V может быть любым. Так мы создали свой тип Context со строковыми полями и неизвестным типом для значения.</p>
2
<p>Ключ Key примет перебором все значения из K. В свою очередь, K является подмножеством string, а V может быть любым. Так мы создали свой тип Context со строковыми полями и неизвестным типом для значения.</p>
3
<p>Подобная конструкция, когда мы не задаем дополнительно никаких специфичных полей с динамическими ключами, встречается довольно часто. Встроенные Utility Types предоставляют для этого готовое решение - Record<Keys, Type>. Этот обобщенный тип принимает первым аргументом тип ключа, а вторым - тип значения. Внутри все устроенно схожим образом, как в нашем типе Context:</p>
3
<p>Подобная конструкция, когда мы не задаем дополнительно никаких специфичных полей с динамическими ключами, встречается довольно часто. Встроенные Utility Types предоставляют для этого готовое решение - Record<Keys, Type>. Этот обобщенный тип принимает первым аргументом тип ключа, а вторым - тип значения. Внутри все устроенно схожим образом, как в нашем типе Context:</p>
4
<p>Таким типом SongsRating мы можем задать тип объекта с произвольным ключом (именем песни) и рейтингом - числом от нуля до пяти.</p>
4
<p>Таким типом SongsRating мы можем задать тип объекта с произвольным ключом (именем песни) и рейтингом - числом от нуля до пяти.</p>
5
<p>Использование Record является предпочтительным при описании объектных типов в TypeScript. Это позволяет гибко и лаконично описывать динамические структуры и использовать Record совместно с другими типами данных.</p>
5
<p>Использование Record является предпочтительным при описании объектных типов в TypeScript. Это позволяет гибко и лаконично описывать динамические структуры и использовать Record совместно с другими типами данных.</p>
6
<h2>Рекомендуемые программы</h2>
6
<h2>Рекомендуемые программы</h2>