我是 Elixir 的新手,有一个关于地图键的问题。我有一个定义如下的地图:
a = %{"key" => 1}
Run Code Online (Sandbox Code Playgroud)
我可以通过a["key"]但不能访问该值a.key。如果我将地图定义为a = %{key: 1},那么我可以通过 获取值a.key。我想知道这两种声明键的方式有什么不同。
如果我有一个接受 key by 的函数a["key']并且我有一个定义为 的映射a = %{key: 1},我如何将此变量传递给函数?
例如,我有以下功能:
def fun1(data) do
data.key ... // access key by atom
done
Run Code Online (Sandbox Code Playgroud)
我有一个使用字符串作为键的变量数据。如何将此变量传递给函数?
这是用于您的密钥的两种不同类型。
%{"key" => 1} 正在使用字符串作为键。%{key: 1}是%{:key => 1}使用原子作为键的简写。map.key如果键有原子,则只能使用语法。
| 归档时间: |
|
| 查看次数: |
5660 次 |
| 最近记录: |