JavaScript代碼壓縮可實現3大功能:減小體積、優化邏輯、提升執行效率
專業的JavaScript代碼壓縮,絕不僅僅是去除回車使代碼擠到一行,而是用真正的技術減小代碼體積、提升代碼性能。
下面,以JShaman的JavaScript代碼壓縮功能為例,以說明JavaScript壓縮具體能對代碼進行哪些優化。
去除未使用的函數、變量
例:
壓縮前的代碼:
function fun_one(){ console.log(var_one); } function fun_two(){ console.log(var_one); } fun_one();
壓縮后:
function fun_one() { console.log(var_one); } fun_one();
壓縮前的代碼:
var var_one = 1; var var_two = 2; function fun_one(){ console.log(var_one); } fun_one();
壓縮后:
var var_one = 1; function fun_one() { console.log(var_one); } fun_one();
如此便省去了無效代碼對空間的占用。
縮短函數名、變量名
例,壓縮前的代碼:
var var_variable_one = 1; var var_variable_two = 2;
壓縮后:
var _0_ = 1; var _0_2 = 2;
例,壓縮前的代碼:
function fun_get_time(){} function fun_set_time(){}
壓縮后:
function _f1_(){} function _f2_(){}
長的函數名、變量名占用的空間多,變短自然省出了空間。
代碼邏輯優化
對功能邏輯進行判斷,去除某些由于邏輯無效而不會被執行的代碼。
例,壓縮前的代碼:
if(1==1){ console.log("1=1"); } else { console.log("1!=1"); }
壓縮后:
console.log("1=1");
例,壓縮前的代碼:
2==2?console.log("2=2"):console.log("2!=2");
壓縮后:
console.log("2=2");
優化了邏輯、去除了無效代碼,代碼執行效率自然可得到提升。
字符串優化
例,壓縮前的代碼:
var four_one = 4; var four_two; var four_three ="this is four_three"; four_two = 5; console.log(four_one,four_two,four_three,four_three);
壓縮后:
var four_two; var four_three = "this is four_three"; four_two = 5; console.log(4, four_two, four_three, four_three);
壓縮前,字符串或常量賦值給變量,后續代碼中使用變量進行各種邏輯處理。
壓縮后,直接取變量真正內容進行操作,省略了對變量的使用,節省了邏輯開銷。
何時使用代碼壓縮?
在實際的編程中,平常不需要壓縮,優化壓縮可能并不利于工作,比如:
使用有意義的長變量名有助于理解代碼內容,方便維護,而不該使用無意義短變量名;
條理分明、但可能不必要的條件判斷語言,同樣便于代碼理解,而不該為了短小而省略判斷。
其它,回注釋、換行、縮進,都是日常編程的正常需要。
但在發行代碼時,需求可能與此相反,通常而言:
需要保密性的重要代碼,可進行混淆加密。
而某些代碼,可能需要考慮性能、大小,以方便高效執行、便于網絡傳輸可以進行代碼壓縮。
那么,你的JavaScript代碼,是需要混淆加密呢,還是需要壓縮呢?
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.