Sass Map(映射)对象是以一对或多对的 key/value 来表示。
Sass Map 是不可变的,因此在处理 Map 对象时,返回的是一个新的 Map 对象,而不是在原有的 Map 对象上进行修改。
下表列出了 Sass 的 Map 函数:
函数 | 描述 & 实例 |
---|---|
map-get(map, key) | 返回 Map 中 key 所对应的 value(值)。如没有对应的 key,则返回 null 值。 实例: $font-sizes: ("small": 12px, "normal": 18px, "large": 24px) map-get($font-sizes, "small") 结果: 12px |
map-has-key(map, key) | 判断 map 是否有对应的 key,存在返回 true,否则返回 false。 实例: $font-sizes: ("small": 12px, "normal": 18px, "large": 24px) map-has-key($font-sizes, "big") 结果: false |
map-keys(map) | 返回 map 中所有的 key 组成的队列。 实例: $font-sizes: ("small": 12px, "normal": 18px, "large": 24px) map-keys($font-sizes) 结果: "small", "normal, "large" |
map-merge(map1, map2) | 合并两个 map 形成一个新的 map 类型,即将 map2 添加到 map1的尾部 实例: $font-sizes: ("small": 12px, "normal": 18px, "large": 24px) $font-sizes2: ("x-large": 30px, "xx-large": 36px) map-merge($font-sizes, $font-sizes2) 结果: "small": 12px, "normal": 18px, "large": 24px, "x-large": 30px, "xx-large": 36px |
map-remove(map, keys...) | 移除 map 中的 keys,多个 key 使用逗号隔开。 实例: $font-sizes: ("small": 12px, "normal": 18px, "large": 24px) map-remove($font-sizes, "small") 结果: ("normal": 18px, "large": 24px) map-remove($font-sizes, "small", "large") 结果: ("normal": 18px) |
map-values(map) | 返回 map 中所有的 value 并生成一个队列。 实例: $font-sizes: ("small": 12px, "normal": 18px, "large": 24px) map-values($font-sizes) 结果: 12px, 18px, 24px |