[發(fā)明專(zhuān)利]基于Javascript的代碼打包方法、裝置及介質(zhì)在審
| 申請(qǐng)?zhí)枺?/td> | 201910748629.7 | 申請(qǐng)日: | 2019-08-14 |
| 公開(kāi)(公告)號(hào): | CN110597547A | 公開(kāi)(公告)日: | 2019-12-20 |
| 發(fā)明(設(shè)計(jì))人: | 龍騰飛 | 申請(qǐng)(專(zhuān)利權(quán))人: | 平安國(guó)際智慧城市科技股份有限公司 |
| 主分類(lèi)號(hào): | G06F8/70 | 分類(lèi)號(hào): | G06F8/70;G06F8/41 |
| 代理公司: | 11327 北京鴻元知識(shí)產(chǎn)權(quán)代理有限公司 | 代理人: | 李玉琦;曹素云 |
| 地址: | 518000 廣東省深圳市前海深港合*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 待打包文件 引用項(xiàng) 字段 原始函數(shù) 打包 讀取 打包文件 對(duì)比結(jié)果 方法調(diào)用 用戶(hù)體驗(yàn) 試運(yùn)行 完整度 加載 網(wǎng)頁(yè) 指向 保證 保留 | ||
本發(fā)明涉及一種基于Javascript的代碼打包方法、裝置及介質(zhì),其中,基于Javascript的代碼打包方法,包括:指向待打包文件的js文件引用項(xiàng)并獲取js文件引用項(xiàng)對(duì)應(yīng)的值、判斷js文件引用項(xiàng)對(duì)應(yīng)的值中是否包括相同的字段,若是,則從相同的字段中保留一個(gè)字段、試運(yùn)行待打包文件,以使得方法調(diào)用棧中保留待打包文件中的所有被執(zhí)行的函數(shù)的名稱(chēng)、讀取待打包文件中的所有原始函數(shù)名稱(chēng)、將所有原始函數(shù)名稱(chēng)與所有被執(zhí)行的函數(shù)的名稱(chēng)作對(duì)比并生成對(duì)比結(jié)果等步驟。本發(fā)明在保證待打包文件的代碼的高完整度情況下縮小保證待打包文件的代碼體積,進(jìn)而提供待打包文件在網(wǎng)頁(yè)中的被加載速度,從而讓提高用戶(hù)體驗(yàn)。
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體而言,本發(fā)明涉及一種基于Javascript的代碼打包方法、裝置及介質(zhì)。
背景技術(shù)
目前的js打包工具都是基于模塊化的,并未對(duì)模塊內(nèi)的引用作特別的處理,因此,當(dāng)眾多模塊一起打包的時(shí)候,很多模塊內(nèi)的引用會(huì)大概率出現(xiàn)重復(fù)出現(xiàn)的情況,導(dǎo)致打包了很多冗余的代碼,導(dǎo)致代碼體積變大,導(dǎo)致頁(yè)面加載變慢,影響頁(yè)面性能。
發(fā)明內(nèi)容
本發(fā)明針對(duì)現(xiàn)有方式的缺點(diǎn),提出了一種基于Javascript的代碼打包方法、裝置及介質(zhì)。
為解決上述技術(shù)問(wèn)題,本發(fā)明第一方面提供基于Javascript的代碼打包方法,該方法包括:
指向待打包文件的js文件引用項(xiàng)并獲取所述js文件引用項(xiàng)對(duì)應(yīng)的值;
判斷所述js文件引用項(xiàng)對(duì)應(yīng)的值中是否包括相同的字段,若是,則從相同的字段中保留一個(gè)字段;
試運(yùn)行所述待打包文件,以使得方法調(diào)用棧中保留所述待打包文件中的所有被執(zhí)行的函數(shù)的名稱(chēng);
讀取待打包文件中的所有原始函數(shù)名稱(chēng);
將所述所有原始函數(shù)名稱(chēng)與所述所有被執(zhí)行的函數(shù)的名稱(chēng)作對(duì)比并生成對(duì)比結(jié)果;
基于所述對(duì)比結(jié)果,從所述所有原始函數(shù)名稱(chēng)中篩選出除所有被執(zhí)行的函數(shù)的名稱(chēng)之外的函數(shù)名稱(chēng);
將所述除所有被執(zhí)行的函數(shù)的名稱(chēng)之外的函數(shù)名稱(chēng)對(duì)應(yīng)的函數(shù)代碼刪除,并生成整合后的打包文件。
作為一種可選的實(shí)施方式,在所述生成整合后的打包文件之后,所述方法還包括:
使用編譯器編譯所述整合后的打包文件;
獲取編譯器編譯所述整合后的打包文件所產(chǎn)生的編譯信息;
根據(jù)所述編譯信息判斷所述整合后的打包文件是否通過(guò)編譯,若是,則生成整合成功提示并生成可發(fā)布文件,若不是,則生成整合失敗提示,其中,所述整合失敗提示包括出錯(cuò)代對(duì)應(yīng)的報(bào)錯(cuò)信息。
作為一種可選的實(shí)施方式,在所述使用編譯器編譯所述整合后的打包文件之前,所述方法還包括:
獲取編譯鏡像文件,應(yīng)用所述編譯鏡像文件創(chuàng)建一個(gè)編譯器,在所述編譯器的配置文件中設(shè)置所述整合后的打包文件的編輯配置信息、所述整合后的打包文件的項(xiàng)目屬性信息、所述整合后的打包文件的打包配置信息;
以及,所述使用編譯器編譯所述整合后的打包文件,包括:
根據(jù)所述編譯器的配置文件,使用編譯器編譯所述整合后的打包文件。
作為一種可選的實(shí)施方式,所述整合后的打包文件的項(xiàng)目屬性信息包括項(xiàng)目名稱(chēng)、版本信息、代碼倉(cāng)庫(kù)或者依賴(lài)項(xiàng)目中的至少一個(gè)。
作為一種可選的實(shí)施方式,所述整合后的打包文件的編輯配置信息包括設(shè)定編譯指令、執(zhí)行條件、執(zhí)行目標(biāo)或者編譯參數(shù)中的至少一個(gè)。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于平安國(guó)際智慧城市科技股份有限公司,未經(jīng)平安國(guó)際智慧城市科技股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910748629.7/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 無(wú)線(xiàn)通信系統(tǒng)中對(duì)初始建立屬性消息進(jìn)行發(fā)送和接收的方法和裝置
- 醫(yī)療字段映射校驗(yàn)方法及裝置
- 字段匹配方法和裝置
- 一種補(bǔ)充數(shù)據(jù)字段的方法及裝置、電子設(shè)備
- 一種字段信息檢驗(yàn)方法及裝置
- 字段類(lèi)別的識(shí)別方法及裝置
- 測(cè)試方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種訓(xùn)練字段分類(lèi)模型的方法、裝置及設(shè)備
- 業(yè)務(wù)數(shù)據(jù)處理方法及裝置
- 字段測(cè)試方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 攔截Win32應(yīng)用程序界面的方法
- 服務(wù)處理方法及裝置、服務(wù)提供方法及裝置、服務(wù)系統(tǒng)
- 還原被第三方動(dòng)態(tài)庫(kù)修改函數(shù)地址的方法和裝置
- 一種調(diào)取函數(shù)的方法和裝置
- 自適應(yīng)性二進(jìn)、共軛屏蔽網(wǎng)格之經(jīng)驗(yàn)?zāi)B(tài)分解方法及其系統(tǒng)
- 一種數(shù)據(jù)加載方法以及裝置
- 系統(tǒng)操作執(zhí)行方法及裝置
- 一種ROM代碼補(bǔ)丁運(yùn)行方法和系統(tǒng)
- 接口配置方法、接口調(diào)用方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 一種紅外圖像細(xì)節(jié)層的處理方法及裝置





