// Flattening JSON Objects //(希望将所有键合并为嵌套散列中的字符串,并希望将其放入数组列表中)
input1 = {a: {b: {c: {} }, d:[] }, e: "e", f: nil, g: -2}
input2 = {a: {b: {c: {h: {j: ''}, m: {n: ''}}}, d: {k: {l: '' } }},e: "e",f: nil,g: -2}
//以上输入的预期输出,应该是一个数组,其中所有这些键以任何顺序排列
output1 = ["g", "f", "e", "a.b.c", "a.d"]
output2 = ["a.b.c.h.j", "a.b.c.m.n", "a.d.k.l", "e", "f", "g"]
1条答案
按热度按时间zfycwa2u1#
创建一个方法
这段代码定义了一个flat_hash_keys方法,该方法接受一个哈希和一个可选的前缀。它递归遍历哈希,将键附加到flat_keys数组。如果一个值是非空哈希,则使用新前缀递归调用该方法。否则,将当前键添加到数组中