[发明专利]一种更换JS引擎的方法及装置有效
申请号: | 201710150699.3 | 申请日: | 2017-03-14 |
公开(公告)号: | CN106933651B | 公开(公告)日: | 2020-10-16 |
发明(设计)人: | 徐佳宏;朱吕亮;梁达源 | 申请(专利权)人: | 深圳市茁壮网络股份有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F16/958 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
地址: | 518004 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 更换 js 引擎 方法 装置 | ||
1.一种更换JS引擎的方法,其特征在于,所述方法包括:
生成每个私有对象符合目标JS引擎语法的外层文件;
当浏览器的Binding模块调用各个所述外层文件时,实现目标JS引擎对webcore的桥接;
根据目标JS引擎的结构定义各个所述私有对象的公共接口函数,并将所述公共接口函数的声明写入头文件中;调用所述头文件中的所述公共接口函数,运行所述目标JS引擎,其中,在定义各个私有对象的公共接口函数后,通过调用所述公共接口函数达到联结替换后的目标JS引擎的目的,以直接将IDL文件中相应私有对象的专有属性和方法复制使用。
2.根据权利要求1所述的方法,其特征在于,所述生成每个私有对象符合目标JS引擎语法的外层文件,包括:
按所述目标JS引擎中IDL文件的语法规则,对原JS引擎中每个私有对象的IDL文件的语法进行修改,得到多个修改后的IDL文件;
分别将各个所述修改后的IDL文件写入Perl脚本;
运行各个所述Perl脚本,生成各个所述私有对象的外层文件。
3.根据权利要求1所述的方法,其特征在于,所述公共接口函数包括:创建和销毁对象类函数、属性设置函数、编码转换函数、执行JS脚本函数、基本数据类型转换函数、数组操作函数、保护和解除保护函数,以及内存回收函数。
4.一种更换JS引擎的装置,其特征在于,所述装置包括:
生成单元,用于生成每个私有对象符合目标JS引擎语法的外层文件;
桥接单元,用于当浏览器的Binding模块调用各个所述外层文件时,实现目标JS引擎对webcore的桥接;
定义单元,用于根据目标JS引擎的结构定义各个所述私有对象的公共接口函数,并将所述公共接口函数的声明写入头文件中;
调用单元,用于调用所述头文件中的所述公共接口函数,运行所述目标JS引擎,其中,在定义各个私有对象的公共接口函数后,通过调用所述公共接口函数达到联结替换后的目标JS引擎的目的,以直接将IDL文件中相应私有对象的专有属性和方法复制使用。
5.根据权利要求4所述的装置,其特征在于,所述生成单元包括:
修改子单元,用于按所述目标JS引擎中IDL文件的语法规则,对原JS引擎中每个私有对象的IDL文件的语法进行修改,得到多个修改后的IDL文件;
写入子单元,用于分别将各个所述修改后的IDL文件写入Perl脚本;
生成子单元,用于运行各个所述Perl脚本,生成各个所述私有对象的外层文件。
6.根据权利要求4所述的装置,其特征在于,所述公共接口函数包括:创建和销毁对象类函数、属性设置函数、编码转换函数、执行JS脚本函数、基本数据类型转换函数、数组操作函数、保护和解除保护函数,以及内存回收函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市茁壮网络股份有限公司,未经深圳市茁壮网络股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710150699.3/1.html,转载请声明来源钻瓜专利网。