Булевы операторы
В отличие от языков вроде JavaScript, Sass использует слова, а не символы для своих булевых операторов.
-
not <expression>возвращает противоположное значение выражения: он преобразуетtrueвfalseиfalseвtrue. -
<expression> and <expression>возвращаетtrue, если оба выражения имеют значенияtrue, иfalse, если хотя бы одно из них имеет значениеfalse. -
<expression> or <expression>возвращаетtrue, если хотя бы одно из выражений имеет значениеtrue, иfalse, если оба имеют значениеfalse.
@debug not true; // false @debug not false; // true @debug true and true; // true @debug true and false; // false @debug true or false; // true @debug false or false; // false
// SASS @debug not true // false @debug not false // true @debug true and true // true @debug true and false // false @debug true or false // true @debug false or false // false
Истинность и ложность
В любом месте, где разрешено использование true или false, можно использовать и другие значения. Значения false и null являются ложными, что означает, что Sass рассматривает их как указание на ложность и приводит к провалу условий. Все остальные значения считаются истинными, поэтому Sass рассматривает их как работающие подобно true и приводящие к выполнению условий.
Например, если вы хотите проверить, содержит ли строка пробел, вы можете просто написать string.index($string, " "). Функция string.index() возвращает null, если строка не найдена, и число в противном случае.
Некоторые языки считают ложными больше значений, чем просто false и null. Sass не относится к таким языкам! Пустые строки, пустые списки и число 0 являются истинными в Sass.
© 2006–2025 the Sass team, and numerous contributors
Licensed under the MIT License.
https://sass-lang.com/documentation/operators/boolean