【技术实现步骤摘要】
前端代码分析方法、装置、计算机设备及存储介质
本申请涉及开发辅助
,尤其涉及前端代码分析方法、装置、计算机设备及存储介质。
技术介绍
在计算机代码中,前端代码是一种非常灵活的代码,若前端代码的逻辑过于复杂,将容易导致许多不可预期的错误。在前端开发的过程中,开发人员都会尽量使前端代码的逻辑更加简单以保证前端代码的质量。现今,随着对前端开发团队的管理水平的提升,前端开发团队的管理人员希望能拥有一种自动分析前端代码质量的工具。但是,现在市场上的代码分析工具大多是针对广泛的计算机代码进行的分析,将其应用在前端代码的分析中,效果并不理想。因此,现有技术中还缺少一种前端代码的分析方法。
技术实现思路
本申请实施例的目的在于提出一种前端代码分析方法、装置、计算机设备及存储介质,以解决现有技术中代码分析工具无法对前端代码进行有效分析的问题。为了解决上述技术问题,本申请实施例提供一种前端代码分析方法,采用了如下所述的技术方案:获取待分析的前端代码;所述前端代码包括超级文本标记代码、脚本代码和层叠样式表 ...
【技术保护点】
1.一种前端代码分析方法,其特征在于,包括下述步骤:/n获取待分析的前端代码;所述前端代码包括超级文本标记代码、脚本代码和层叠样式表代码;/n对所述超级文本标记代码进行分析以获得所述超级文本标记代码的层级复杂度值和超级文本标记代码行数值;/n对所述脚本代码进行分析以获得所述脚本代码的时间复杂度值和机器代码行数值;/n对所述层叠样式表代码进行分析以获得所述层叠样式表代码的动画复杂度值和层叠样式表代码行数值;/n将所述层级复杂度值、所述超级文本标记代码行数值、所述时间复杂度值、所述机器代码行数值、所述动画复杂度值和所述层叠样式表代码行数值在交互界面进行展示。/n
【技术特征摘要】
1.一种前端代码分析方法,其特征在于,包括下述步骤:
获取待分析的前端代码;所述前端代码包括超级文本标记代码、脚本代码和层叠样式表代码;
对所述超级文本标记代码进行分析以获得所述超级文本标记代码的层级复杂度值和超级文本标记代码行数值;
对所述脚本代码进行分析以获得所述脚本代码的时间复杂度值和机器代码行数值;
对所述层叠样式表代码进行分析以获得所述层叠样式表代码的动画复杂度值和层叠样式表代码行数值;
将所述层级复杂度值、所述超级文本标记代码行数值、所述时间复杂度值、所述机器代码行数值、所述动画复杂度值和所述层叠样式表代码行数值在交互界面进行展示。
2.根据权利要求1所述的前端代码分析方法,其特征在于,所述对所述超级文本标记代码进行分析以获得所述超级文本标记代码的层级复杂度值和超级文本标记代码行数值包括:
遍历所述超级文本标记代码对应的DOM树以获得所述超级文本标记代码的各个层级标签在所述超级文本标记代码中出现的次数;
计算各个层级标签的次数的加权和,以所述加权和为所述层级复杂度值;
识别所述超级文本标记代码中的行数标识字符,以所述行数标识字符在所述超级文本标记代码中出现的次数为所述超级文本标记代码行数值。
3.根据权利要求2所述的前端代码分析方法,其特征在于,遍历所述超级文本标记代码对应的DOM树时,还获取各个层级标签对应的层级权值,所述层级权值是一个随层级标签的层级深度增加而增加的斐波那契数列,所述计算各个层级标签的次数的加权和包括:
将所述层级权值作为各个层级标签的次数的加权计算所述次数的加权和。
4.根据权利要求1所述的前端代码分析方法,所述对所述脚本代码进行分析以获得所述脚本代码的时间复杂度值和机器代码行数值包括:
识别所述脚本代码中的分割字符,提取每两个分割字符间的脚本代码以作为各个语句片段;
识别每个语句片段中的语句类型字符,并根据所述语句类型字符确定每个语句片段对应的机器代码行数;
将各个语句片段对应的机器代码行数相加以得到机器代码行数值;
识别各个语句片段中的循环标识字符,将包含有所述循环标识字符的语句片段作为循环语句片段;
识别所述循环语句片段中的条件字符,并根据所述条件字符获得所述循环语句片段的循环次数;
将各个所述循环语句片段对应的循环次数相加以得到时间复杂度值。
5.根据权利要求4所述的前端代码分析方法,所述根据所述条件字符获得所述循环语句片段的循环次数包括:
判断所述条件字符的字符类型;所述字符类型包括数字字符和字母字符;
当所述条件字符是数字字符时,以所述条件字符表示的数值为所述循环语句片段的循环次数;
当所述条件字符是字母字符时,在所述脚本代码中查找所述字母字符的赋值语句,以所述赋值语句中的赋值为所述循环语句片段的循环次数。
6.根据...
【专利技术属性】
技术研发人员:李静,
申请(专利权)人:中国平安财产保险股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。