欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

詳解如何提升JSON.stringify()的性能-創(chuàng)新互聯(lián)

1. 熟悉的JSON.stringify()

創(chuàng)新互聯(lián)主營(yíng)翁源網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app軟件開發(fā),翁源h5小程序設(shè)計(jì)搭建,翁源網(wǎng)站營(yíng)銷推廣歡迎翁源等地區(qū)企業(yè)咨詢

在瀏覽器端或服務(wù)端,JSON.stringify()都是我們很常用的方法:

  • 將 JSON object 存儲(chǔ)到 localStorage 中;
  • POST 請(qǐng)求中的 JSON body;
  • 處理響應(yīng)體中的 JSON 形式的數(shù)據(jù);
  • 甚至某些條件下,我們還會(huì)用它來實(shí)現(xiàn)一個(gè)簡(jiǎn)單的深拷貝;
  • ……

在一些性能敏感的場(chǎng)合下(例如服務(wù)端處理大量并發(fā)),或面對(duì)大量 stringify 的操作時(shí),我們會(huì)希望它的性能更好,速度更快。這也催生了一些優(yōu)化的 stringify 方案/庫,下圖是它們與原生方法的性能對(duì)比:

綠色部分時(shí)原生JSON.stringify(),可見性能相較這些庫都要低很多。那么,在大幅的性能提升背后的技術(shù)原理是什么呢?

2. 比 stringify 更快的 stringify

由于 JavaScript 是動(dòng)態(tài)性很強(qiáng)的語言,所以對(duì)于一個(gè) Object 類型的變量,其包含的鍵名、鍵值、鍵值類型最終只能在運(yùn)行時(shí)確定。因此,執(zhí)行JSON.stringify()時(shí)會(huì)有很多工作要做。在一無所知的情況下,我們想要大幅優(yōu)化顯然無能為力。

那么如果我們知道這個(gè) Object 中的鍵名、鍵值信息呢 —— 也就是知道它的結(jié)構(gòu)信息,這會(huì)有幫助么?

看個(gè)例子:

下面這個(gè) Object,

const obj = { 
 name: 'alienzhou', 
 status: 6, 
 working: true 
}; 

網(wǎng)站題目:詳解如何提升JSON.stringify()的性能-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://chinadenli.net/article44/cohehe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序品牌網(wǎng)站設(shè)計(jì)網(wǎng)站導(dǎo)航App設(shè)計(jì)動(dòng)態(tài)網(wǎng)站微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化