2021年9月24日 星期五

SCSS / SASS筆記 String 字串及相關函式

讀 document 的小筆記。String and String function 字串基礎與字串處理相關函式。

基礎

官方文獻:Values / Strings

  1. 允許有quote和沒quote的字串宣告
    1. 不特定字串 ,如 "Hevetica"(Hevetica為某著名的字體字族)
    2. 特定字串 ,如:
      1. bold, nowrap ... css常用 property 字串

  2. 不會被編譯器當字串的文字組合:
    1. null, true, false, and, or, not ... 等 SCSS 常用字 不會被當成字串資料
    2. red, green, pink ... 等 color name ,資料型態為color,而非string
  3. 字串內的跳脫字元「\」
    1. 斷行符號為「\a」 ,可使用在@debug中吐資料時排版
    2. 可插入unicode字,如  \1F46D
  4. 在字串裡引用變數時,變數要加 interpolation
    $var:block
    @debug "$val is #{$var}"; // $val is block
    @debug --breackpoint-#{$var};

字串黏貼符

官方文獻:Operators / String

debug心得:黏貼符「-」使用時,空一格的結果不會空一格

  1.  有「+」、「-」兩種。
  2. 「+」會在字串相黏後消失,「-」則會形成字串中綴。 
    1. 使用「+」時,「+」前後有沒有留空格都不改變字串黏貼後的成果。
    2. 但使用「-」時,「-」後方需留一格以上的空格,粘貼符才會被編譯生效。否則編譯器將視「-string」為一個字串,而非撰寫者認知中的粘貼符「-」與字串「string」。
  3. 若待黏貼字串有引號,成果字串也會有引號。
  4. 數字和顏色不能作為左側第一個待黏貼字串,因為會被當成數字/顏色的資料型態,而非字串。
  5. 承4. true 和 fasle 可以放左側第一個。
  6. 字串黏貼單一運算子:
    1. /(空格)string 強制成為無引號字串。
    2. -(空格)string 強制成為前綴「-」的無引號字串。
  7. 額外提醒:string(空格)string,雖用@debug顯示時,結果看起來像一個內容為「string(空格)string」的字串,但實際上是一個 list。遇到可疑變數型態時,可用type-of()驗證之。

字串處理相關函式

官方文獻:Built-In Modules / Strings

  1. str-index($string, $substring) //=> number
  2. str-insert($string, $insert, $index) //=> string
    1. $index可正可負,負號為倒數第n位
    2. $index 大於 length($string) , $insert 插在 $string 最後面。
    3. $index 小於 0 ,且 |$index| > length($string) , $insert 插在 $string 最前面。
  3. str-length($string) //=> number
  4. str-slice($string, $start-at, $end-at: -1) //=> string
  5. unique-id() //=> string
  6. quote($string) //=> string
  7. unquote($string) //=> string
  8. to-upper-case($string) //=> string
  9. to-lower-case($string) //=> string

 Bootstrap(v5,往前版本不確定)

  1.  str-replace($string, $search, $replace: "") // => string
     

沒有留言:

張貼留言