[elixir! #0062] 快速賦值小技巧

elixir 裏由於模式匹配的存在,在賦值多個變量時,咱們通常使用匹配的方式,例如:code

[a, b, c] = [1, 2, 3]

然而,若是咱們在編譯時並不知道右邊列表的長度,應該如何匹配呢?在 elixir 標準庫中爲咱們提供了 destructure/2 這個方便的宏:編譯

destructure [a, b, c], [1, 2, 3, 4, 5]

自動匹配到前三個元素 [1, 2, 3]變量

若是右邊的列表更短,則會自動填充上 nil:elixir

destructure [a, b, c], [1, 2]

獲得 a = 1, b = 2, c = nilco

相關文章
相關標籤/搜索