最近体验了一下Node.js和MongoDB,在开发过程中受到MongoDB使用JSON作为语法承载结构的启发,制作了一个JavaScript的数据筛选器。
最初的目标是希望实现一个能够对原始数据进行水平、垂直裁剪的通用语法接口,以实现数据到视图的自动生成,举个小例子:
从服务器获得了如下一组数据:
{ Key1: "Value1", Key2: "Value2", Key3: "Value3", Key4: { SubKey1: "Value4", SubKey2: [ "Value5", "Value6", "Value7" ] }, }
现在,我们想在页面上显示Key1,Key3,Key4中的SubKey2。那么传统手段是创建一个新的空对象,然后按照原始数据的结构将需要的字段或数组项拷贝过去。显然,这种方法毫无扩展性,未来会不可避免的出现难以维护的局面。那么我们用MongoDB的思路来做做看。
我们构建一个如下对象:
[ "Key1", "Key3", { "Key4" : [ "SubKe