из Wikipedia: в компьютерном программировании, «охранник» - это логическое выражение, которое должно оценить True, если выполнение программы будет продолжаться в данном филиале. Независимо от того, какой язык программирования используется, код охраны или охранная пункт является проверкой предварительных условий целостности, используемых для предотвращения ошибок во время выполнения.
]Другими словами, защитное выражение является выражением (также называемой шаблоном), которое проверяет самые простые условия с минимумом расчетов, чтобы предотвратить ошибки и неожиданное поведение. Это общий шаблон почти во всех языках программирования.
] давайте посмотрим на пример:
]
const capitalize = str => { // Guard expression if (typeof str !== 'string') return ''; return str.charAt(0).toUpperCase() s.slice(1); }]
это классический пример выражения охраны. В начале функции он проверяет, является ли передаваемое значение строкой. Если он не удается, предотвратите дальнейшие расчеты функции. С таким подходом основной код находится на верхнем уровне, а не внутри условия оператора if. Это помогает избежать гнездования и улучшения читаемости кода.
] вот еще один пример:
]
const checkAge = age => { if (typeof age === 'number') { if (age = 21 && ]это простая функция, которая проверяет возраст. Это выглядит нормально, но мы можем сделать некоторые улучшения здесь.
]
const checkAge = age => { if (typeof age !== 'number') return null; if (age = 21 && ]Условие Возвращает ноль, если не число, совершенно очевидно. Мы запускаем функцию с простой проверки и, если она не удается, все под выражением охраны (первая проверка) падает. Теперь легче прочитать функцию и, что более важно, она предотвращает ненужные вычисления.
] ] ]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3