根据JSON文件获取对象的模式

时间:2016-01-26 14:33:12

标签: javascript json node.js

我有大量的JSON文件,从公共API中提取。由于Node.js,我试图获取文件描述的对象的模式(键/值的类型),与Mongoose中描述的模式相同,例如:

schema = {
  key1: 'Number',
  key2: 'Boolean',
  key3: {
    key31: 'String',
    key32: 'Boolean'
  },
  key4: [{
    key41: 'String',
    key42: 'Number'
  }]
};

为了做到这一点,我写了一个脚本,它获取第一个文件,获取键和值的类型(递归地,因为对象有子对象);然后将第二个文件与第一个文件进行比较并添加一些数据,如果第一个文件缺少某些键,依此类推......也许不是实现我想做的最佳解决方案,但它(几乎)完成了工作。

不幸的是,在运行脚本之后,所有类型的子对象数组(上例中的key41key42)都显示为string,尽管我有一些{{ 1}},boolean ...

这是我从现在开始做的事情:

number

有人可以帮我解决这个问题吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

你的最后陈述,

to[key] = typeof from[key];

应该是

to[key] = from[key]

除非我读错了,示例键:值对包含'value'的实际值而不是typeof。