我正在尝试有效地删除Yojson.Safe.t
的成员。
例如:
{
id: 123,
name: "bob",
roles: ["admin", "user"]
}
如果我要删除id成员,结果将是:
{
name: "bob",
roles: ["admin", "user"]
}
我原本以为这样的东西可以做到:
Yojson.Safe.Util.to_assoc json
|> List.filter (fun (t, _) -> t != "id")
|> fun t -> `Assoc t
但由于某种原因,它保留了成员。如何从Yojson.Safe.t
中删除成员?
不要使用!=
来比较字符串!使用<>
:
# "abc" != "abc";;
- : bool = true
# "abc" <> "abc";;
- : bool = false
!=
运算符是"物理不相等",即==
运算符的逆。这些不是一般用途,尤其是不可变值。
比较的主要操作符是=
和<>
。