一种前端对象的比较方法及系统技术方案

技术编号:35937909 阅读:23 留言:0更新日期:2022-12-14 10:25
本发明专利技术提供一种前端对象的比较方法及系统,涉及前端开发技术领域,所述方法包括步骤:(1)判断源对象和目标对象的数据类型;(2)如果源对象和/或目标对象为空类型,则对源对象和目标对象进行全等比较;(3)如果源对象和目标对象均为引用类型,则对源对象和目标对象进行数组长度比较、属性长度比较;(4)如果源对象和目标对象均为基础类型,则对源对象和目标对象进行全等比较。本发明专利技术在对前端对象进行比较时,首先对空类型对象进行不等判断,对引用类型对象进行数组长度不等判断、属性长度不等判断,可迅速得出对象不等的结论,节约了前端开发的执行时间,降低了时空复杂度。降低了时空复杂度。降低了时空复杂度。

【技术实现步骤摘要】
一种前端对象的比较方法及系统


[0001]本专利技术涉及前端开发
,具体而言,涉及一种前端对象的比较方法及系统。

技术介绍

[0002]大数据时代,数据对于个人和企业而言都是至关重要的。目前,随着计算机和网络应用的日益广泛以及不同领域的业务种类的日益丰富,前端对象处理方法变得越来越重要,直接影响前端开发的效率和数据处理的准确率;为了判断对象的属性是否发生改变,则需要对两个对象进行比较,其中,所述对象属于一种复合的数据类型。
[0003]现有对象比较方法主要有两种,第一种是对对象的引用地址的笼统比较,第二种是对对象的属性进行全等比较;其中,第一种对象比较方法存在的缺陷是因为标识符存放于栈内存中,标识符所指向的引用地址存放于堆内存种,当两个标识符指向的是同一个内存地址,这两个对象才相等,但当只对对象的属性值进行修改而不对该对象重新赋值时,该对象的引用地址并不会发生改变,则该方法并不能准确判断出对象是否发生改变;第二种对象比较方法则需要层层比较、逐级遍历,在部分极端情况下需要遍历到最后一个节点才能得出两个对象不相等的结论,极大地占用内存空间,耗费时间,时空复杂度较高。

技术实现思路

[0004]为了解决现有对象比较方法无法准确进行判定或者对象判定占用极大内存空间和时间,时空复杂度较高的问题,本专利技术提供了一种前端对象的比较方法及系统。
[0005]在第一方面,本专利技术实施例中提供一种前端对象的比较方法,所述方法包括以下步骤:
[0006](1)判断源对象和目标对象的数据类型
[0007](2)如果源对象和/或目标对象为空类型,则对源对象和目标对象进行全等比较,并且返回比较结果;
[0008](3)如果源对象和目标对象均为引用类型,则对源对象和目标对象进行数组长度比较、属性长度比较,并且返回比较结果;
[0009](4)如果源对象和目标对象均为基础类型,则对源对象和目标对象进行全等比较,并且返回比较结果。
[0010]于上述实施例中,首先判断源对象和目标对象是否为空类型,当存在空类型时,则可以通过判断源对象和目标对象不等,快速得出源对象和目标对象不等的结论,如果源对象和目标对象不存在空类型时,则继续判断源对象和目标对象是否为引用类型,当为引用类型时,则可以通过判断源对象和目标对象的数组长度或者可枚举的属性长度不同,快速得出源对象和目标对象不等的结论,避免了当遇到上述极端情况还需层层遍历递归到最后的节点才能得出结论的情况,降低时空复杂度。
[0011]作为本申请一些可选实施方式,如果源对象和目标对象均为空类型,则返回正确提示;如果源对象和目标对象存在一个空类型,则返回错误提示。
[0012]作为本申请一些可选实施方式,当源对象和目标对象均为引用类型,对源对象和目标对象进行数组长度比较、属性长度比较的流程如下:
[0013]如果目标对象是数组类型,并且目标对象的数组长度和源对象的数组长度不同,则返回错误提示;
[0014]如果目标对象是数组类型,并且目标对象的数组长度和源对象的数组长度相同,则获取源对象和目标对象的可枚举的属性,如果目标对象的属性长度和源对象的属性长度不同,则返回错误提示;
[0015]如果目标对象不是数组类型,则获取源对象和目标对象的可枚举的属性,如果目标对象的属性长度和源对象的属性长度不同,则返回错误提示。
[0016]于上述实施例中,当源对象和目标对象为引用类型时,首先判断目标对象是否为数组类型,如果为数组类型,则可以通过判断目标对象和源对象的数组长度不等,快速得出源对象和目标对象不等的结论;然后还可以通过判断源对象和目标的属性长度不等,快速得出源对象和目标对象不等的结论,整个判断逻辑紧密结合,由浅入深,进而能够快速得出比较结论,降低时空复杂度。
[0017]作为本申请一些可选实施方式,如果目标对象是数组类型,并且目标对象的数组长度与源对象的数组长度相同,目标对象的属性长度和源对象的属性长度相同,则进行以下处理:
[0018]循环遍历目标对象的属性和源对象的可枚举的属性;
[0019]如果目标对象的属性和源对象的属性不同,则返回错误提示。
[0020]作为本申请一些可选实施方式,如果目标对象不是数组类型,则获取源对象和目标对象的可枚举的属性,如果目标对象的属性长度和源对象的属性长度相同,则进行以下处理:
[0021]循环遍历目标对象的属性和源对象的可枚举的属性;
[0022]如果目标对象的属性和源对象的属性不同,则返回错误提示。
[0023]作为本申请一些可选实施方式,所述源对象和目标对象为前端封装的JSON格式数据。
[0024]作为本申请一些可选实施方式,如果源对象和/或目标对象为空类型,则采用全等运算符对源对象和目标对象进行全等比较;如果源对象和目标对象均为基础类型,则采用全等运算符对源对象和目标对象进行全等比较。
[0025]在第二方面,本专利技术提供一种前端对象的比较系统,所述系统包括:数据类型判断单元、空类型数据处理单元、引用类型数据处理单元以及基础类型数据处理单元;
[0026]所述数据类型判断单元用于判断源对象和目标对象的数据类型;
[0027]所述空类型数据处理单元用于对空类型的源对象和/或目标对象进行全等比较、属性长度比较,并且返回比较结果;
[0028]所述引用类型数据处理单元用于对引用类型的源对象和目标对象进行数组长度比较,并且返回比较结果;
[0029]所述基础类型数据处理单元用于对基础类型的源对象和目标对象进行全等比较,并且返回比较结果。
[0030]作为本申请一些可选实施方式,所述引用类型数据处理单元包括:
[0031]数组类型判断模块、数组长度判断模块、属性获取模块、属性长度判断模块;
[0032]所述数组类型判断模块用于判断源对象和目标对象是否为数组类型,如果目标对象是数组类型,则将源对象和目标对象传输到数组长度判断模块,如果目标对象不是数组类型,则将源对象和目标对象传输到属性获取模块;
[0033]所述数组长度判断单元用于判断目标对象的数组长度和源对象的数组长度是否相同,如果相同,则将源对象和目标对象传输到属性获取模块,如果不同,则返回错误提示;
[0034]所述属性获取模块用于获取源对象和目标对象的可枚举的属性,并且将属性传输到属性长度判断模块;
[0035]所述属性长度判断模块用于判断目标对象的属性长度和源对象的属性长度是否相同,如果相同,则循环遍历目标对象的属性,并且对目标对象的属性和源对象的属性进行比较,并且返回比较结果,如果不同,则返回错误提示。
[0036]在第三方面,本专利技术提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述一种前端对象的比较方法。
[0037]在第四方面,本专利技术提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种前端对象的比较方法,其特征在于,所述方法包括以下步骤:判断源对象和目标对象的数据类型;如果源对象和/或目标对象为空类型,则对源对象和目标对象进行全等比较,并且返回比较结果;如果源对象和目标对象均为引用类型,则对源对象和目标对象进行数组长度比较、属性长度比较,并且返回比较结果;如果源对象和目标对象均为基础类型,则对源对象和目标对象进行全等比较,并且返回比较结果。2.根据权利要求1所述的一种前端对象的比较方法,其特征在于,如果源对象和目标对象均为空类型,则返回正确提示;如果源对象和目标对象存在一个空类型,则返回错误提示。3.根据权利要求1所述的一种前端对象的比较方法,其特征在于,当源对象和目标对象均为引用类型,则对源对象和目标对象进行数组长度比较、属性长度比较的流程如下:如果目标对象是数组类型,并且目标对象的数组长度和源对象的数组长度不同,则返回错误提示;如果目标对象是数组类型,并且目标对象的数组长度和源对象的数组长度相同,则获取源对象和目标对象的可枚举的属性,如果目标对象的属性长度和源对象的属性长度不同,则返回错误提示;如果目标对象不是数组类型,则获取源对象和目标对象的可枚举的属性,如果目标对象的属性长度和源对象的属性长度不同,则返回错误提示。4.根据权利要求3所述的一种前端对象的比较方法,其特征在于,如果目标对象是数组类型,并且目标对象的数组长度与源对象的数组长度相同,目标对象的属性长度和源对象的属性长度相同,则进行以下处理:循环遍历目标对象的属性和源对象的可枚举的属性;如果目标对象的属性和源对象的属性不同,则返回错误提示。5.根据权利要求3所述的一种前端对象的比较方法,其特征在于,如果目标对象不是数组类型,则获取源对象和目标对象的可枚举的属性,如果目标对象的属性长度和源对象的属性长度相同,则进行以下处理:循环遍历目标对象的属性和源对象的可枚举的属性;如果目标对象的属性和源对象的属性不同,则返回错误提示。6.根据权利要求1所述的一种前端对象的比较方法,其特征在于,所述源对象和目标对象为...

【专利技术属性】
技术研发人员:ꢀ五一IntClG零六F八二零
申请(专利权)人:成都数之联科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1