一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

防止動態加載JavaScript引起的內存泄漏問題

為了釋放腳本資源,通常在返回后還要一些進行額外的處理。
復制代碼 代碼如下:
script = document.createElement('script');
script.src =
'http://example.com/cgi-bin/jsonp?q=What+is+the+meaning+of+life%3F';
script.id = 'JSONP';
script.type = 'text/Javascript';
script.charset = 'utf-8';
// 標簽加到head后,會自動加載并運行。
var head = document.getElementsByTagName('head')[0];
head.appendChild(script)

實際上很多流行的JS庫都采用這種方式,創建一個scritp標簽,賦予一個ID后加載腳本(比如YUI get()),加載完并回調后清除該標簽。問題在于當你清除這些script標簽的時候,瀏覽器僅僅是移除該標簽結點。
復制代碼 代碼如下:
var script = document.getElementById('JSONP');
script.parentNode.removeChild(script);

當瀏覽器移除這標簽結點后的同時并沒對結點內JavaScript資源的進行垃圾回收,這意味著移除標簽結點還不夠,還得手動的清除script標簽結點的內容:
復制代碼 代碼如下:
// Remove any old script tags.
var script;
while (script = document.getElementById('JSONP')) {
script.parentNode.removeChild(script);
// 瀏覽器不會回收這些屬性所指向的對象.
//手動刪除它以免內存泄漏.
for (var prop in script) {
delete script[prop];
}
}

JavaScript技術防止動態加載JavaScript引起的內存泄漏問題,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 涩多多在线观看 | 亚洲欧洲在线观看 | 亚洲国产欧美国产第一区二区三区 | 亚洲国产一区二区三区最新 | 色网综合| 黄色视屏免费看 | 久久久久777777人人人视频 | 深夜一级毛片 | 日韩亚洲欧美综合一区二区三区 | 91精品免费观看老司机 | 婷婷射| 黄色网址视频在线观看 | 色女人天堂 | 欧美极品欧美精品欧美图片 | 起碰免费视频97网站 | www.五月| 婷婷六月在线 | 最新亚洲一区二区三区四区 | 日韩免费视频在线观看 | 日韩欧美一区二区三区 | 91精品久久 | 伊人久久综合视频 | 91久久精品都在这里 | 69女poren60| 欧美日韩亚洲另类人人澡 | 精品国产96亚洲一区二区三区 | 韩国日本理论片 | 国产成人乱码一区二区三区 | 中文字幕一区婷婷久久 | 精品欧美一区二区精品久久 | 亚洲乱码在线 | 欧美中文字幕一二三四区 | 日本高清www视频在线观看 | 欧美日韩在线视频 | 久久福利青草狠狠午夜 | 91成人午夜精品福利院在线观看 | www.免费视频.com | 免费韩国美女爽快一级毛片 | 精品视频一区二区三区四区 | 婷婷丁香在线观看 | 国产精品偷伦视频免费观看了 |