• 字典辅助函数(Str)
    • 可用方法
    • Filter
    • Modify
    • AddRange
    • Map
    • Keys
    • Values
    • Get
    • Set
    • Remove

    字典辅助函数(Str)

    字典辅助方法库允许您以更加便捷的方式对字典进行操作。

    可用方法

    • Filter
    • Modify
    • AddRange
    • Map
    • Keys
    • Values
    • Get
    • Set
    • Remove

    Filter

    将输入字典中的每个值传给回调函数,如果回调函数返回 true,则把输入字典中的当前键值对加入结果字典中。

    1. var src = // { "a" : "1"} , { "b" : "2" }
    2. Dict.Filter(src, (key, val)=> val == "2"); // { "b" : "2" }

    Modify

    将输入字典中的每个值传给回调函数,回调函数的返回值用于修改元素的值。

    1. var src = // { "a" : "1"} , { "b" : "2" }
    2. Dict.Modify(src, (key , val) => "3");
    3. // src:
    4. // { "a" : "3" },
    5. // { "b" : "3" }

    AddRange

    将元素批量添加到字典。

    1. var src = // { "a" : "1" }, { "b" : "2" }
    2. var added = // { "c" : "3" }
    3. Dict.AddRange(src, added);
    4. // { "a" : "1" }, { "b" : "2" }, { "c" : "3" }

    Map

    将字典值传入用户自定义函数,自定义函数返回的值作为新的字典值。

    1. var src = // { "a" : "1" }, { "b" : "2" }
    2. Dict.Map(src, (key,val)=> "3");
    3. // src:
    4. // { "a" : "1"},
    5. // { "b" : "2" }
    6. // return:
    7. // { "a" : "3" },
    8. // { "b" : "3" }

    Keys

    获取字典的键数组。

    1. var src = // { "a" : "1" }, { "b" : "2" }
    2. Dict.Keys(src);
    3. // { "a" : "b" }

    Values

    获取字典的值数组。

    1. var src = // { "a" , "1" }, { "b" , "2" }
    2. Dict.Values(src);
    3. // { "1" , "2" }

    Get

    使用点(.)来访问深度字典(IDictionary<string, object>)。一般性Json的返回结果会被使用深度字典表示。

    1. var src = // { "hello" : { "world" : "catlib" } }
    2. Dict.Get(src, "hello.world"); // catlib
    3. Dict.Get(src, "hello.none", "null"); // null

    Set

    使用点(.)来访问深度字典,并为其指定位置设定一个值。

    1. var src = // { "hello" : { "world" : "catlib" } }
    2. Dict.Set(src, "hello.catlib" , "hello");
    3. // { "hello" : { {"world" : "catlib"} , { "catlib" , "hello"} } }

    Remove

    将输入字典中的每个值传给回调函数,如果回调函数返回 true,则移除字典中对应的元素并返回被移除的元素

    1. var src = // { "hello" : "world" }
    2. var result = Dict.Remove(src, (key,value) => true);
    3. // result: { "hello" : "world" }
    4. // { }

    使用点(.)来访问深度字典,并移除其中指定的值,返回一个bool值来指定是否成功

    1. var src = // { "hello" : { {"world" : "catlib"} , { "catlib" , "hello"} } }
    2. Dict.Remove(src, "hello.catlib");
    3. // { "hello" : { "world" : "catlib" } }