sass:map
- Sass de Dart
- since 1.23.0
- LibSass
- ✗
- Sass de Ruby
- ✗
💡 Fato Divertido:
As bibliotecas e sistema de desenho da Sass tendem a partilhar e sobrepor configurações que são representadas como mapas encaixados (mapas que contêm mapas que contêm mapas).
Para ajudar a trabalhar com mapas encaixados, algumas funções de mapa suportam operações profundas. Por exemplo, se passares várias chaves para map.get()
, seguirão estas chaves para encontrar o mapa encaixado desejado:
map.deep-merge($map1, $map2) //=> map
- Sass de Dart
- since 1.27.0
- LibSass
- ✗
- Sass de Ruby
- ✗
Idêntico ao map.merge()
, exceto que os valores do mapa encaixado também são combinados recursivamente:
map.deep-remove($map, $key, $keys...) //=> map
- Sass de Dart
- since 1.27.0
- LibSass
- ✗
- Sass de Ruby
- ✗
Se $keys
estiver vazio, retorna uma cópia de $map
sem um valor associado ao $key
:
Se $keys
não estiver vazio, segue o conjunto de chaves incluindo $key
e excluindo a última chave em $keys
, da esquerda para a direita, para encontrar o mapa encaixado apontado para a atualização.
Retorna uma cópia de $map
onde o mapa escolhido como alvo não tem um valor associado à última chave em $keys
:
map.get($map, $key, $keys...)
map-get($map, $key, $keys...)
Se $keys
estiver vazio, retorna o valor no $map
associado ao $key
.
Se $map
não tiver um valor associado ao $key
, retorna null
.
- Sass de Dart
- since 1.27.0
- LibSass
- ✗
- Sass de Ruby
- ✗
Se $keys
não estiver vazio, segue o conjunto de chaves incluindo $kye
e excluindo a última chave no $keys
, da esquerda para a direita, para encontrar o mapa encaixado apontado para a averiguação.
Retorna o valor no mapa escolhido como alvo associado à última chave em $keys
.
Retorna null
se o mapa não tiver um valor associado à chave, ou se qualquer chave em $keys
estiver em falta num mapa ou fizer referência a um valor que não é um mapa:
map.has-key($map, $key, $keys...)
map-has-key($map, $key, $keys...) //=> boolean
Se $keys
estive vazio, retorna verdadeiro se $map
contiver um valor associando à $key
:
- Sass de Dart
- since 1.27.0
- LibSass
- ✗
- Sass de Ruby
- ✗
Se $keys
não estiver vazia, segue o conjunto de chaves incluindo $key
e excluindo a última chave em $keys
, da esquerda para a direita, para encontrar o mapa encaixado apontado para averiguação.
Retorna verdadeiro se o mapa escolhido como alvo contiver um valor associado à última chave em $keys
.
Retorna falso se não contiver, ou se qualquer chave em $keys
estiver em falta num mapa ou fizer referência a um valor que não estiver num mapa:
map.keys($map)
map-keys($map) //=> list
Retorna uma lista separada por vírgula de todas as chaves no $map
:
map.merge($map1, $map2)
map-merge($map1, $map2)
map.merge($map1, $keys..., $map2)
map-merge($map1, $keys..., $map2) //=> map
⚠️ Atenção!
Na prática, os argumentos exatos para map.merge($map1, $keys..., $map2)
são passados como map.merge($map1, $args...)
. Eles são descritos aqui como $map1, $keys..., $map2
apenas para fins de explicação.
Se numa $keys
forem passadas, retorna um novo mapa com todas as chaves e valores de ambos $map1
e $map2
.
Se ambos $map1
e $map2
tiverem a mesma chave, o valor de $map2
tem prioridade.
Todas as chaves no mapa retorna que também aparecem em $map1
têm a mesma ordem que em $map1
. As novas chaves de $map2
aparecem no final do mapa:
- Sass de Dart
- since 1.27.0
- LibSass
- ✗
- Sass de Ruby
- ✗
Se $keys
não estiver vazio, segue as $keys
para encontrar o mapa encaixado apontado para a fusão. Se qualquer chave em $keys
estiver em faltando num mapa ou fizer referência a um valor que não for um mapa, define o valor nessa chave para um mapa vazio.
Retorna uma cópia de $map1
onde o mapa escolhido como alvo é substituído por um mapa novo que contém todas as chaves e valores de ambos o mapa escolhido como alvo e $map2
:
map.remove($map, $keys...)
map-remove($map, $keys...) //=> map
Retorna uma cópia de $map
sem quaisquer valores associados às $keys
.
Se uma chave em $keys
não tem um valor associado no $map
, é ignorada:
map.set($map, $key, $value)
map.set($map, $keys..., $key, $value) //=> map
⚠️ Atenção!
Na prática, os argumentos exatos para map.set($map, $keys..., $key, $value)
são passados como map.set($map, $args...)
. Eles são descritos aqui como $map, $keys..., $key, $value
apenas por fins de explicação.
Se $keys
não forem passadas, retorna uma cópia de $map
com o valor na $key
definida para $value
:
- Sass de Dart
- since 1.27.0
- LibSass
- ✗
- Sass de Ruby
- ✗
Se $keys
forem passadas, segue as $keys
para encontrar o mapa encaixado apontado para atualização. Se qualquer chave em $keys
estiver faltando num mapa ou fizer referência a um valor que não é um mapa, define o valor nesta chave para um mapa vazio.
Retorna uma cópia de $map
com o valor do mapa escolhido como alvo na $key
definido para $value
:
map.values($map)
map-values($map) //=> list
Retorna uma lista separada por vírgula de todos os valores em $map
.