国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

2023,沒有搞不定的JavaScript!

譯文 精選
開發 前端
我們嘗試為你提供12個技巧來改進你的JavaScript之旅。你可能會發現很難一次性記住上面提到的所有技巧。但通過實踐,你會學會所有這些方法,并見證JavaScript性能的重大提升。

譯者 | 涂承燁

審校 | 孫淑娟

由于代碼可見性低,使用Java腳本進行編碼可能會很耗時。這里有12個優雅的JavaScript技巧,可以幫助你在2023年優化代碼生成。

JavaScript已經成為下一批開發人員中最主要腳本語言。對于前端編程、構建交互式、功能豐富的網站以及快速流暢的Web應用程序來說,這是一個不可思議的工具。每個前端程序員都知道JavaScript,然而,如果在不知情的情況下使用它,情況會變得更糟。糟糕的JavaScript代碼會影響網站的性能、渲染速度和加載時間。在這篇博文中,我們將分享一些技巧,幫助你優化未來的JavaScript之旅。讓我們一起來看看。

一、縮小文件的JavaScript代碼

縮小代碼與混淆代碼不同。然而,這兩種方法都是轉換JavaScript的方法——讀起來更復雜或更小。縮小實現了后者,并可以縮小文件大小以減少頁面加載時間。換行符、多余空格、注釋等都會增加JavaScript文件的大小,并影響頁面加載的速度。縮小代碼可以解決這個問題。

二、排除.js庫中未使用的組件

開發人員使用JavaScript庫,如jQuery UI或jQuery Mobile等。這意味著代碼包含了每個庫的所有組件,而你可能只需要其中的一些組件。

如果你精通于理解將在庫的哪個包中包含哪些組件,那么就選擇那些特定的組件。你的網站將加載更快,用戶將得到一個很好的體驗。

三、使用HTTP/2協議

這一主要互聯網協議(HTTP)的更新版本可以為開發人員提供許多很酷的功能。它的眾多優點之一是多路復用。這允許你使用TCP連接并發地接受類似的請求和響應。此外,早期的互聯網協議需要對JavaScript理論有透徹的了解和增強的知識,而HTTP/2可以使JavaScript快速加載。因此,HTTP/2在性能上要比HTTP協議好得多。

圖片

圖片

四、GZIP模塊適用于Apache、Node.js和Nginx

GZIP是一種令人驚嘆的壓縮技術,它是在幾年前互聯網還沒有像現在這樣高速發展的時候引入的。它減少了Web服務器上的文件,將靜態文件壓縮到真實大小的80%到90%。由于JavaScript是文本文件,你可以使用GZIP來壓縮JavaScript文件,也有助于減少頁面加載時間。

圖片

有一些模塊可用于Web服務器,包括Nginx和Apache。由于JavaScript同時用于前端編程和后端編程,因此可以使用Node.js的zlib模塊來壓縮JS文件。

// Code to run zlib module

Const zlib = require(‘zlib’);

使用GZIP的代碼:

Const gzip = zlib.createGzip();

Const fs = require(‘fs’);

Const inp = fs.createReadStream(‘input.txt);

Const out = fs.createWriteStream(‘input.txt.gz);

Inp.pipe(gzip).pipe(out);

五、縮短DOM層次和訪問深度

DOM (Document Object Model,文檔對象模型)是組成網頁結構的對象的數據表示形式。每個Web頁面都是文檔,通常是一個HTML文件,文檔中的每個對象稱為節點。作為對用戶輸入的響應,JavaScript會影響DOM及其節點改變結構、樣式和內容。

每次JavaScript代碼訪問DOM組件或修改DOM時,這取決于開發人員是怎么處理DOM的。如果系統必須在DOM中重新計算多個節點,這將消耗更多內存并降低性能。在優化代碼時,修剪冗長的DOM的樹型結構層次是一個很好的方法。保持較小的DOM有很多好處:

  • 減少內存泄漏的風險
  • 優化網絡效率和負載性能
  • 良好的執行性能

下面是一些最小化DOM的方法:

  • 減少DOM引用
  • 回避復雜動畫
  • 保持簡單的CSS規范

六、將JavaScript代碼和CSS放在head部分

此方法幫助你更快地加載網頁;但是,你需要對DOM和SCCOM有很好的理解。這樣做的目的是在head部分保留更少的CSS和JavaScript代碼,以便頁面立即加載,而更一般的代碼通常保存在不同的.CSS和.js文件中。

七、拋棄等待,放到promise.all里一起執行

你應該將調用和未解決的promise合并到一個數組中,而不是等待執行。例如,如果要對數據庫進行多次調用,通常需要等待的時間是每次調用完成的時間之和。

//Code to call two databases

const getUsers = async () => {

const consumers = await findAllConsumers();

const managers = await findAllManagers();

Return { consumers, managers}

}

最好的方法之一是同時運行兩個調用,并在大約一半的時間內解析輸出。

// code to call both databases simultaneously

const getUsers = async () => {
const consumers = findAllConsumers();
const managers = findAllManagers();

Return Promise.all([consumers, managers]);
}

你不必等待兩個數據庫都執行完成,兩者是并行運行的。

八、代碼分割

這是一種實踐,將函數式元素的代碼分解在小文件中,以便在需要時調用。將代碼分割為小塊,用應用程序中特定功能和特性的部分加載時間替換單個大型JavaScript文件的加載時間。你可以使用不同但可用的打包工具來分割代碼以進行應用程序優化。

九、測試代碼

測試對于識別內存泄漏等性能問題并恢復它們至關重要。下面是一些常用的JavaScript測試工具:

1.Console.time()

這是一個內置的JavaScript函數,可以使用它來檢查執行某個過程需要多長時間。在這個過程的開始,只需調用:Console.time(label);

在這里,label可以是你給定時器的唯一名稱。在這個過程的最后,只需要調用:Console.timeEnd(label);

編寫此代碼可為你提供執行某個過程的處理時間。

2.YSlow

它是一個開源的性能測量工具,可以評估網站并提供性能改進建議。YSlow調用你的網站,并將其性能與雅虎的網站性能標準進行比較。它會給你一個介于0到100%之間的分數。這是增強代碼以獲得更好性能的好方法。

十、在集群中運行應用程序

在Node.js中,你可以利用集群模塊來運行與父進程并發運行的子進程。子集群或進程在V8、事件循環和內存中運行。這將為每個進程分配負載和任務。

圖片

十一、內存溢出

在這種狀態下,進程完成了對內存的使用,但沒有將其返回給另一個應用程序或進程使用的操作系統。每次在JavaScript中創建對象或聲明變量時,都會占用內存。當你使用完一個對象或變量時,內存溢出可能會發生,但JS運行時仍然會考慮你還需要它。這將影響系統性能,因為應該為其他不再可用的進程釋放資源。避免JavaScript內存泄漏的最佳方法是適當地管理作用域。

十二、異步加載:Defer和Async標簽

JavaScript的異步加載意味著網站以多信息流的方式加載。

圖片

當Web瀏覽器找到<script src = " some.js " ></script>的字符串時,它將在JavaScript執行期間停止創建DOM和CSSOM模型。這就是大多數JavaScript代碼放在主HTML代碼之后的原因。看下面的代碼來理解這一點:

<html>
<head>
</head>
<body>

This will not appear until hello.js is loaded.

</body>
</html>

你可以給JavaScript添加一個async標簽,這樣DOM模型就可以并行創建,并且在JavaScript加載和執行時不會被干擾。

十三、總結

我們嘗試為你提供12個技巧來改進你的JavaScript之旅。你可能會發現很難一次性記住上面提到的所有技巧。但通過實踐,你會學會所有這些方法,并見證JavaScript性能的重大提升。

原文鏈接:?https://dzone.com/articles/12-ways-to-optimize-your-javascript-journey??

譯者介紹

涂承燁,51CTO社區編輯,信息系統項目管理師、信息系統監理師、PMP,某省綜合性評標專家,擁有15年的開發經驗。

責任編輯:武曉燕 來源: 51CTO技術棧
相關推薦

2016-11-15 15:38:59

2019-10-21 08:16:17

邊緣計算數據安全網絡安全

2018-08-13 17:12:22

科技

2020-02-17 15:14:43

計算機十進制二進制

2025-04-03 09:00:00

狀態同步架構開發

2021-01-13 11:48:18

數據分析供應鏈管理主管

2020-09-15 06:13:05

Vue.jsJavaScript框架

2025-05-28 08:20:00

無線網絡ACAP

2024-06-11 14:30:18

2021-05-26 09:46:10

數據庫工具技術

2023-05-04 10:12:00

模型馬斯克

2013-04-23 10:42:55

JavaScriptthis

2021-12-13 07:02:47

硬件軟件CPU

2018-10-09 12:41:10

正則表達式NLP字符串

2021-01-28 08:03:44

程序員 finallyreturn

2021-11-10 15:32:03

無人駕駛智慧道路技術

2019-02-26 08:46:56

谷歌圖譜員工

2025-12-05 06:00:00

PandasExcelPython

2025-10-31 01:00:00

2025-11-25 09:27:33

點贊
收藏

51CTO技術棧公眾號

在线播放一区二区精品视频| 久久精选视频| 91黄色在线观看| 国产淫片免费看| 欧美三级乱码| 欧美—级a级欧美特级ar全黄 | 国产欧美日韩免费观看| 亚洲精品v欧美精品v日韩精品| 亚洲影视在线播放| 亚洲精品一品区二品区三品区| 精品视频亚洲| 欧美精品性视频| 自拍视频在线看| 欧美性猛交一区二区三区精品| 久久久久国产精品熟女影院 | 日本韩国欧美精品大片卡二| 二区三区不卡| 国产一区二区在线视频| 91精品在线影院| 日韩理论电影中文字幕| 精品国产一区二区三区久久久| 国产日韩一区二区在线| 无吗不卡中文字幕| 欧美激情在线观看视频免费| 99精品国产在热久久婷婷| 国内精品美女在线观看| 日韩主播视频在线| 国产午夜精品在线| 亚洲制服av| 亚洲三区视频| 午夜a成v人精品| 国产精品中文在线| 国产高清久久久久| 国产永久免费高清在线观看视频| 亚洲福利视频在线| 久久av色综合| 欧美人狂配大交3d怪物一区| 女人让男人操自己视频在线观看 | 波多野结衣亚洲| 欧美人交a欧美精品| 免费成人av| 97超碰人人爱| 色伊人久久综合中文字幕| 免费一区二区三区在在线视频| 午夜精品一区在线观看| 欧美黄色网络| 99蜜桃在线观看免费视频网站| 国产suv精品一区二区6| 欧妇女乱妇女乱视频| 在线看日韩精品电影| 国产精品偷伦视频免费观看国产| 超碰在线国产| 日韩精品中文字幕一区| 牛牛视频精品一区二区不卡| 欧美三级资源在线| 成人免费91| 国产精品片aa在线观看| 欧美重口乱码一区二区| 国产中文字幕一区| а√最新版地址在线天堂 | 91精品国产综合久久久蜜臀粉嫩 | 亚洲aⅴ天堂av在线电影软件| 亚洲大黄网站| 久久青青草原一区二区| 毛片一区二区三区| 欧美日韩国产精品激情在线播放| 久久久久久99精品| 亚洲精品一区二区| 欧美午夜影院一区| 桃色一区二区| 日本三级韩国三级久久| 亚洲人www| 日韩精品在线中文字幕| 国产精品的网站| 久久米奇亚洲| 亚洲美女中文字幕| 风间由美中文字幕在线看视频国产欧美 | 国产精品影视网| 中文字幕国产传媒| 色综合色综合色综合| 天堂中文在线播放| 欧美一区二区三区图| 日韩午夜在线电影| 免费看国产曰批40分钟| 洋洋av久久久久久久一区| 欧美日韩视频在线一区二区观看视频| 亚洲午夜三级在线| 蜜臀久久精品| 国产伦精品一区二区三区视频黑人| 色片在线免费观看| 欧美日韩在线免费视频| www在线播放| 亚洲图片欧美午夜| 欧美大胆视频| 欧美xxxx黑人又粗又长精品| 99国产精品一区| 日韩a在线看| 宅男66日本亚洲欧美视频| 精品国产美女| 一区二区三区四区在线视频 | 欧美尺度大的性做爰视频| 亚洲一区欧美| 欧美视频在线播放一区| 欧美性猛交xxxx乱大交3| 日本精品不卡| 97欧洲一区二区精品免费| 91偷拍与自偷拍精品| 欧美极品另类| 国产成人激情小视频| 国产一区二区三区在线看麻豆| 色播视频在线观看| 久久精品视频网站| 国产一区二区三区久久久久久久久 | 成人精品久久av网站| 99精品国产99久久久久久福利| 国产在线播放不卡| 欧洲亚洲视频| 91在线视频导航| 91精品综合| 老牛国产精品一区的观看方式| 欧美亚洲在线视频| 日韩精品免费一区二区三区竹菊| 国产精品午夜一区二区欲梦| 99热这里只有成人精品国产| 亚洲 日韩 国产第一区| 蜜桃av一区二区在线观看| 欧美a级免费视频| 国产美女精品在线| 成年人视频在线免费观看| 日韩欧美在线观看一区二区| 国产情侣久久| 美女av网站| 在线看欧美日韩| 99亚洲一区二区| 中文在线播放| 7777精品久久久久久| 成人av综合一区| 久草免费在线视频| 麻豆成人av| 欧美中文一区二区三区| 日韩欧美高清| 深夜爽爽视频| 91精品国产99| 国产人妖乱国产精品人妖| 国产精品伦一区二区| 中文字幕一区二区三区四区五区 | 97久久视频| av一级二级| 97在线日本国产| 成人午夜激情在线| 性欧美超级视频| 青青青在线观看视频| 亚洲男人的天堂在线播放| 久久99国产精品久久99| 在线h片观看| 欧美乱偷一区二区三区在线| 51精品国自产在线| 久久视频一区| 成人免费网站观看| 色菇凉天天综合网| 色一区二区三区四区| 97在线影院| 91久久久精品| 91久久国产最好的精华液| 黑丝一区二区三区| 成人免费黄色网页| 精品一区二区三区国产| 日韩一二三区不卡| 久久99国产精品久久99果冻传媒| 欧美一级鲁丝片| 欧美一级视频免费看| 欧美精品videos| 亚洲一区国产视频| 伊人久久亚洲美女图片| 久久99亚洲网美利坚合众国| 日韩一区二区高清视频| 久久久久久久影院| 午夜视频在线观看一区二区| 精品av久久久久电影| 9765激情中文在线| 国产极品尤物在线| 国产91在线播放| 欧美日精品一区视频| 国产一区二区三区香蕉| 成人盗摄视频| 日本在线视频1区| 欧美人与物videos另类| 亚洲新中文字幕| 国产精品视频在线看| 一区二区三区在线电影| 后进极品白嫩翘臀在线播放| 精品人妻一区二区三区四区在线 | 中文一区一区三区高中清不卡免费| 亚洲一区二区三区四区中文| 亚洲国产欧美一区二区三区丁香婷| 久草资源在线| 久久精品亚洲乱码伦伦中文| 国产激情视频网址| 国产伦精品一区二区三区视频黑人| 亚洲国产精品va|