CN119397058A Js对象表示数据处理方法、装置、设备和存储介质 (一汽-大众汽车有限公司)_第1页
CN119397058A Js对象表示数据处理方法、装置、设备和存储介质 (一汽-大众汽车有限公司)_第2页
CN119397058A Js对象表示数据处理方法、装置、设备和存储介质 (一汽-大众汽车有限公司)_第3页
CN119397058A Js对象表示数据处理方法、装置、设备和存储介质 (一汽-大众汽车有限公司)_第4页
CN119397058A Js对象表示数据处理方法、装置、设备和存储介质 (一汽-大众汽车有限公司)_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本发明提供了一种JS对象表示数据处理方一JS对象表示数据和第二JS对象表示数据转换不变的节点和数据有变化的节点分别分配不同将发生变化的第二树结构的节点和节点数据添2S101、获取第一JS对象表示数据和第二JS对象表据和所述第二JS对象表示数据各自包括可相互嵌套的对象类S102、根据所述第一JS对象表示数据和所述S103、针对所述第一树结构和所述第二树结构中的S104、针对所述第一树结构和所述第二树结构中具有得所述第一树结构中当前根节点下的第一子节点列表和所述第二树结构中当前根节点下S106、在所述第一子节点列表中的当前第一子所有第二子节点的指纹都不同的情况下,将当前第一子节点的节点状态置为第一状态值,S107、在所述第二子节点列表中的当前第二子所有第一子节点的指纹都不同的情况下,将当前第二子节点的节点状态置为第二状态值,S108、在所述第一子节点列表中的当前第一子S109、在节点数据一致的情况下,将所述第一子S110、在节点数据不一致的情况下,将所述第一子S111、将节点状态为第四状态值的当前第一子节点S112、判断所述第一树结构当前根节点下的第一子3在当前节点的节点数据中获取当前局部数据,其中所述当前在所述当前局部数据的值是数组类型数据的情况下,将数组类在所生成的第一树结构的每个节点的局部数在当前节点的节点数据中获取当前局部数据,其中所述当前在所述当前局部数据的值是数组类型数据的情况下,将数组类在所生成的第二树结构的每个节点的局部数根据预先定义的规则,将预先定义的节点中的字段的值拼接为字基于预先定义的指纹计算公式,根据预先定义的节点中的字段的值计算出节点的指遍历所述第一子节点列表,将所述第一子节点列表中的每个第一子节点的遍历所述第二子节点列表,将所述第二子节点列表中的每个第二子节点的JS对象表示数据获取模块,配置用于获取第一JS对象表示数据和第二JS对象表示数树结构生成模块,配置用于根据所述第一JS对象表示数据和所述第二指纹生成模块,配置用于针对所述第一树结构和所述第二子节点列表获取模块,配置用于针对所述第一树结构和所4指纹比较模块,配置用于将所述第一子节点的指纹与所述第二子节点的指纹进行比第一状态值设置模块,配置用于在所述第一子节点列表中的当第二状态值设置模块,配置用于在所述第二子节点列表中的当二子节点的节点数据添加到所述第一子节点列表中数据一致性判断模块,配置用于在所述第一子节点列表中的当前第第三状态值设置模块,配置用于在节点数据一致的情况下,将第四状态值设置模块,配置用于在节点数据不一致的情子节点列表判断模块,配置用于判断所述第一树结构当5[0003]JSON格式数据中包括对象类型JSONObject和数组类型JSONArray。JSONObject和类型的节点数据由于不具备指纹等标识而无法在构和所述第二树结构中的每个节点,根据预先定义的节点中的字段的值来生成节点的指所述第一树结构中当前根节点下的第一子节点列表和所述第二树结构中当前根节点下的前第二子节点的指纹与所述第一子节点列表中的所有第一子节点的指纹都不同的情况下,数据中,并且将当前第二子节点的节点数据添加到所述第一子节点列表中的相应位置;第一子节点的节点状态置为第三状态值,将节点状态添加到当前第一子节点的节点数据6节点下的第一子节点列表和所述第二树结构中当前根节点下的第二子节点列表是否均为所述当前局部数据不包含数组类型数据;为所述当前局部数据生成所述第一树结构的节列表中的每个第一子节点的指纹依次与所述第二子节点列表中的第二子节点的指纹进行7置用于在所述第二子节点列表中的当前第二子节点的指纹与所述第一子节点列表中的所表中的当前第一子节点的指纹与所述第二子节点列表中的当前第二子节点的指纹相同的情况下,判断具有相同指纹的当前第一子节点和当前第二子节点中的节点数据是否一致;状态值的当前第一子节点和对应的当前第二子节点分别作为所述第一树结构和第二树结一子节点列表和所述第二树结构中当前根节点下的第二子节点列表是否均为空,如果是,用于将所述第一树结构转换为比较结果JS对象表示文件并存储在数执行时实现上述任何实施方式描述的JS对象了目前JSON数据难以进行比较的技术问题,针对待比较的JSON数据中每个子节点值为8[0017]图2示出了根据本发明的实施方式的JS对象表示数据处理方法的框架示意流程[0018]图3示出了根据本发明的实施方式的JS对象表示数据处理方法的树结构生成过程[0019]图4示出了根据本发明的实施方式的JS对象表示数据处理方法的树内容比较过程[0020]图5示出了用于执行根据本发明的实施方式的JS对象表示数据处理方法的示例程[0024]在一个方面,本发明的实施方式提供了一种JS对象表示(JavaScriptObject[0025]为了便于理解,结合图2对本发明的实施方式提出的JS对象表示数据处理方法的大体框架进行说明,图2示出了根据本发明的实施方式的JS对象表示数据处理方法的框架[0026]如图2所示,本发明的实施方式提出的JS对象表示数据处理方法大致包括以下过[0028]在对树的内容进行比较的过程中,可以通过对2个需要进行内容比较的树的迭代类型JSONObject与JSONArray进行串,值(value)为任意数据类型,值的数据类型包含JSONObject与JSONArray。以下是JSONObject类型数据的一种形式9[0043]在本发明的应用场景中,JSON/树的数据可比较的前提是父节点具有多个子节点别获得第一树结构中当前根节点下的第一子节点列表和第二树结构中当前根节点下的第[0071]在步骤S113中,将第一树结构转换为比较结果JS对象表示文件并存储在数据库[0073]通过对比较结果进行查询的程序,可以查询到包含比较结果的任意范围的局部一JS对象表示数据的根节点作为当前节点;在当前节点的节点数据中获取当前局部数据,局部数据的值是数组类型数据的情况下,将数组类型数据中的子节点作为新的当前节点,[0076]以下结合图3示出的一个具体示例来示例性地说明根据本发明的实施方式的JS对根据预先配置好的算法计算指纹,同时将当前局部数据的值(包节点列表中的每个第一子节点的指纹依次与第二子节点列表中的第二子节点的指纹进行[0080]以下结合图4所示的一个具体示例,对根据本发明的实施方式的JS对象表示数据节点root2(根节点2)作为输入参数;获得root1的子节点列表children1与root2的子节点列表children2;判断children1与children2是否都为空?如果否,不是都为空,则遍历children1;判断children1中的单个子节点的指纹与children2中所有子节点指纹是否都变化字段,该字段名称可以自行定义,例如JSONOld或JSONNew;在判断children1与[0082]对树的内容进行比较的程序通过对2个待比较的树1与树2进行迭代遍历,通过节[0083]参考图5,其示出了用于执行根据本发明的实施方式的JS对象表示数据处理方法点值为JSONArray的情况,为每个JSONArray中的节点按照特定的规则赋予唯一指纹,使[0086]JS对象表示数据获取模块601可以配置用于获取第一JS对象表示数据和第二JS对[0087]树结构生成模块602可以配置用于根据第一JS对象表示数据和第二JS对象表示数[0088]指纹生成模块603可以配置用于针对第一树结构和第二树结构中的每个节点,根[0089]子节点列表获取模块604可以配置用于针对第一树结构和第二树结构中具有相同[0090]指纹比较模块605可以配置用于将第一子节点的指纹与第二子节点的指纹进行比[0091]第一状态值设置模块606可以配置用于在第一子节点列表中的当前第一子节点的[0092]第二状态值设置模块607可以配置用于在第二子节点列表中的当前第二子节点的第二子节点的节点数据添加到第一子节点列[0093]数据一致性判断模块608可以配置用于在第一子节点列表中的当前第一子节点的[0094]第三状态值设置模块609可以配置用于在节点数据一致的情况下,将第一子节点[0095]第四状态值设置模块610可以配置用于在节点数据不一致的情况下,将第一子节[0096]当前根节点更新模块611可以配置用于将节点状态为第四状态值的当前第一子节点和对应的当前第二子节点分别作为第一树结构[0097]子节点列表判断模块612可以配置用于判断第一树结构当前根节点下的第一子节[0098]比较结果生成模块613可以配置用于将第一树结构转换为比较结果JS对象表示文实现的功能与上文描述的JS对象表示数据处理方法的各个步骤一一对应,其具体实施方了目前JSON数据难以进行比较的技术问题,针对待比较的JSON数据中每个子节点值为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论