sass:map
- Dart Sass
- since 1.23.0
- LibSass
- ✗
- Ruby Sass
- ✗
💡 Интересный факт:
Библиотеки и системы проектирования Sass имеют тенденцию разделять и переопределять конфигурации, представленные как вложенные карты (карты, содержащие карты, содержащие карты).
Чтобы помочь вам работать с вложенными картами, некоторые функции карт поддерживают глубокие операции. Например, если вы передадите несколько ключей в map.get(), он будет следовать этим ключам, чтобы найти желаемую вложенную карту:
map.deep-merge($map1, $map2) //=> map - Dart Sass
- since 1.27.0
- LibSass
- ✗
- Ruby Sass
- ✗
Идентично map.merge(), за исключением того, что значения вложенных карт также рекурсивно объединяются.
map.deep-remove($map, $key, $keys...) //=> map - Dart Sass
- since 1.27.0
- LibSass
- ✗
- Ruby Sass
- ✗
Если $keys пусто, возвращает копию $map без значения, связанного с $key.
Если $keys не пусто, следует за набором ключей, включая $key и исключая последний ключ в $keys, слева направо, чтобы найти вложенную карту, предназначенную для обновления.
Возвращает копию $map, где целевая карта не имеет значения, связанного с последним ключом в $keys.
map.get($map, $key, $keys...)
map-get($map, $key, $keys...) Если $keys пусто, возвращает значение в $map, связанное с $key.
Если $map не имеет значения, связанного с $key, возвращает null.
- Dart Sass
- since 1.27.0
- LibSass
- ✗
- Ruby Sass
- ✗
Если $keys не пусто, следует за набором ключей, включая $key и исключая последний ключ в $keys, слева направо, чтобы найти вложенную карту, предназначенную для поиска.
Возвращает значение целевой карты, связанное с последним ключом в $keys.
Возвращает null, если карта не имеет значения, связанного с ключом, или если какой-либо ключ в $keys отсутствует в карте или ссылается на значение, не являющееся картой.
map.has-key($map, $key, $keys...)
map-has-key($map, $key, $keys...) //=> boolean Если $keys пусто, возвращает, содержит ли $map значение, связанное с $key.
- Dart Sass
- since 1.27.0
- LibSass
- ✗
- Ruby Sass
- ✗
Если $keys не пусто, следует за набором ключей, включая $key и исключая последний ключ в $keys, слева направо, чтобы найти вложенную карту, предназначенную для поиска.
Возвращает истину, если целевая карта содержит значение, связанное с последним ключом в $keys.
Возвращает false, если это не так, или если какой-либо ключ в $keys отсутствует на карте или ссылается на значение, которое не является картой.
map.keys($map)
map-keys($map) //=> list Возвращает разделенный запятыми список всех ключей в $map.
map.merge($map1, $map2)
map-merge($map1, $map2)
map.merge($map1, $keys..., $map2)
map-merge($map1, $keys..., $map2) //=> map ⚠️ Внимание!
На практике фактические аргументы в map.merge($map1, $keys..., $map2) передаются как map.merge($map1, $args...). Они описаны здесь как $map1, $keys..., $map2 только для объяснения.
Если $keys не переданы, возвращает новую карту со всеми ключами и значениями из $map1 и $map2.
Если и $map1, и $map2 имеют один и тот же ключ, значение $map2 имеет приоритет.
Все ключи в возвращенной карте, которые также появляются в $map1, имеют тот же порядок, что и в $map1. Новые ключи от $map2 появляются в конце карты.
- Dart Sass
- since 1.27.0
- LibSass
- ✗
- Ruby Sass
- ✗
Если $keys не пусто, следует за $keys, чтобы найти вложенную карту, предназначенную для слияния. Если какой-либо ключ в $keys отсутствует на карте или ссылается на значение, которое не является картой, устанавливает значение в этом ключе на пустую карту.
Возвращает копию $map1, где целевая карта заменяется новой картой, которая содержит все ключи и значения как целевой карты, так и $map2.
map.remove($map, $keys...)
map-remove($map, $keys...) //=> map Возвращает копию $map без каких-либо значений, связанных с $keys.
Если ключ в $keys не имеет связанного значения в $map, он игнорируется.
map.set($map, $key, $value)
map.set($map, $keys..., $key, $value) //=> map ⚠️ Внимание!
На практике фактические аргументы в map.set($map, $keys..., $key, $value) передаются как map.set($map, $args...). Они описаны здесь как $map, $keys..., $key, $value только в целях объяснения.
Если $keys не переданы, возвращает копию $map со значением в $key, установленным в $value.
- Dart Sass
- since 1.27.0
- LibSass
- ✗
- Ruby Sass
- ✗
Если переданы $keys, следует за $keys, чтобы найти вложенную карту, предназначенную для обновления. Если какой-либо ключ в $keys отсутствует на карте или ссылается на значение, которое не является картой, устанавливает значение в этом ключе на пустую карту.
Возвращает копию $map со значением целевой карты в $key, установленным в $value.
map.values($map)
map-values($map) //=> list Возвращает разделенный запятыми список всех значений в $map.