我在变量中得到以下结果:
list_of_scripts = [
{<<"script">>,[{<<"type">>,<<"text/javascript">>}],[<<"\n /*\n some JS here;\n ">>]},
{<<"script">>,[{<<"type">>,<<"text/javascript">>}],["some json content"]},
{<<"script">>,[],[<<"\n ">>]}
]
我想将每个元组的第3个元素放入列表
答案 0 :(得分:3)
如果您想要每个元组的第三个元素列表,可以使用Enum.map/2
+ elem/2
:
list_of_scripts |> Enum.map(&elem(&1, 2)) |> IO.inspect
[["\n /*\n some JS here;\n "], ["some json content"],
["\n "]]
如果你是一个平面列表(因为每个第3个元素都是一个列表),你可以使用Enum.flat_map/2
代替:
list_of_scripts |> Enum.flat_map(&elem(&1, 2)) |> IO.inspect
["\n /*\n some JS here;\n ", "some json content",
"\n "]
elem
为零索引,因此要获取第三项,我们使用elem(_, 2)
。