成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Web前端性能優化教程:精簡JS 移除重復腳本

開發 前端 開發工具
本文是Web前端性能優化系列文章中的第七篇,主要講述內容:精簡Javascript代碼,以及移出重復腳本。完整教程可查看:Web前端性能優化

本文是Web前端性能優化系列文章中的第七篇,主要講述內容:精簡Javascript代碼,以及移出重復腳本。完整教程可查看:Web前端性能優化

[[132147]]

一、精簡javascript

基礎知識

精簡:從javascript代碼中移除所有的注釋以及不必要的空白字符(空格,換行和制表符),減少javascript文件的大小。

混淆:和精簡一樣,會從javascript代碼中移除注釋和空白,另外也會改寫代碼。作為改寫的一部分,函數和變量的名字將被轉換為更短的字符串,所以進一步減少了javascript文件的大小。

混淆的缺點

1. 缺陷:混淆過程本身很有可能引入錯誤。

2. 維護:由于混淆會改變javascript符號,因此需要對任何不能改變的符號進行標記,防止混淆器修改它們。

3. 調試:經過混淆的代碼很難閱讀,這使得在產品環境中更加難以調試。

相對而言,精簡出錯的概率會少很多。

一個精簡和混淆的示例

這個示例將使用JSMin進行精簡,使用yuicompressor進行混淆。原始js如下:

//anthor:teroy/*

This is for test.

*/

function show(name, day) {

alert(name);

alert(day);

}

function test(name, day) {

var variable = name;

show(name, day);

}

JSMin精簡后的代碼:

function show(name,day){alert(name);alert(day);}

function test(name,day){var variable=name;show(name,day);}

yuicompressor混淆后的代碼:

function show(b,a){alert(b);alert(a)}function test(c,a){var b=c;show(c,a)};

可見,混淆更能減少js代碼的大小。

對精簡和混淆進行抉擇

我們知道啟用gzip壓縮能減少組件的傳送大小,壓縮后精簡和混淆的差別會進一步減少,綜合考慮混淆可能帶來的額外的風險,所以優先考慮使用精簡。不過,如果對于性能的***追求,可以使用混淆,但要做足測試,確保混淆不會帶來其他的問題。

JQuery作為非常流行的前端框架,除了有開發版外,也提供了一個min版本,供實際部署web使用,這個min版本就使用了混淆,***化地減少代碼總量。

二、移除重復腳本

出現重復腳本的原因

導致一個腳本的重復又兩個主要因素:團隊大小和腳本數量。開發一個網站需要極大數量的資源,不同的團隊需要構建一個大型web的不同部分,當團隊整合和溝通工作沒有做足,則容易出現重復腳本的情況。當然腳本數量也是重要的一環,腳本數量越多越容易出現重復腳本的情況。

重復腳本如何損傷性能

在沒有緩存的情況下,如果在html中重復鏈接了相同的腳本,IE7以下(包括IE7)將會產生兩次HTTP請求,IE8以上則不會。

除了產生不必要的HTTP請求外,對腳本進行重復執行也會浪費時間,腳本的重復執行在瀏覽器中都存在。

如何避免重復腳本

1. 形成良好的腳本組織。重復腳本有可能出現在不同的腳本包含同一段腳本的情況,有些是必要的,但有些卻不是必要的,所以需要對腳本進行一個良好的組織。

2. 實現腳本管理器函數。

 【編輯推薦】

 

責任編輯:王雪燕 來源: 站長之家
相關推薦

2022-03-02 11:13:50

Web前端開發

2012-01-10 16:22:25

Web

2013-01-22 15:27:23

WebWeb前端

2017-06-22 13:07:21

2017-02-05 17:33:59

前端優化Web性能

2018-06-27 08:21:31

前端Web渲染

2019-07-16 11:15:04

JavaScriptCSS數據庫

2014-12-10 10:12:02

Web

2019-11-01 14:00:58

前端性能優化代碼

2020-10-16 09:00:12

前端開發技術

2012-07-13 09:58:06

WEBWEB前端性能優化

2022-11-16 12:03:13

性能優化前端

2022-05-17 09:02:30

前端性能優化

2020-10-16 10:40:39

前端性能可視化

2022-02-16 08:11:52

組件渲染前端

2022-01-21 10:09:34

前端開發技術

2021-07-05 14:55:28

前端優化圖片

2011-04-25 09:11:15

2012-09-13 11:13:26

IBMdw

2023-04-10 11:18:38

前端性能優化
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线中文字幕av | 国产精品欧美大片 | 噜噜噜噜狠狠狠7777视频 | 中文字幕99 | 午夜视频在线 | 精品欧美一区二区在线观看视频 | 久久久久成人精品免费播放动漫 | 国产99视频精品免费视频7 | 最近日韩中文字幕 | 91精品久久久久久久久久入口 | 中文字幕成人av | 欧美色综合一区二区三区 | 特黄色一级毛片 | 看a网站 | 亚洲丝袜天堂 | caoporn国产精品免费公开 | 国产毛片久久久久久久久春天 | 国产xxx在线观看 | 国产高清在线精品一区二区三区 | 日韩欧美国产一区二区 | 毛片毛片毛片毛片 | 毛片免费在线 | 久久999 | 日韩中文欧美 | 91在线观看免费 | 蜜桃在线一区二区三区 | 超碰超碰| 99精品视频一区二区三区 | 成人一区av偷拍 | 亚洲欧美日韩久久 | 国产成人麻豆免费观看 | 精品久久久久久久人人人人传媒 | 91精品国产综合久久久久蜜臀 | 国产91视频播放 | 免费欧美视频 | 久久国产美女视频 | 日韩欧美一级片 | 日本在线免费看最新的电影 | 欧美色综合 | 欧美激情一区二区 | 亚洲精品68久久久一区 |