一区二区久久-一区二区三区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引起的內存泄漏問題,轉載需保留來源!

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

主站蜘蛛池模板: 九一国产在线观看 | 韩国在线观看一区二区三区 | 美女毛片视频 | 欧美激情网站 | 欧美日韩中文国产va另类 | 青青国产成人久久激情911 | 97人人看 | 国产一区在线观看视频 | 手机在线看片不卡中文字幕 | 婷婷综合激情网 | 国产成人咱精品视频免费网站 | 色老板在线观看永久免费视频 | 久久手机视频 | 美国毛片亚洲社区在线观看 | 91视频美女 | 色噜噜狠狠一区二区三区果冻 | 二区三区在线 | 亚洲精品国产福利在线观看 | 91精品国产品国语在线不卡 | 国产a级精品特黄毛片 | 韩国免费一级片 | 国产精品久久久亚洲第一牛牛 | 色吧综合| 久久精品国产屋 | 欧美a级黄色片 | 九九视频网| 国产精品91视频 | 极品美女一级毛片免费 | 黄网站在线观看 | 99热99re8国产在线播放 | 中文字幕一区二区三区四区 | 黄色网页在线 | 国产精品玖玖玖在线观看 | 98视频在线观看 | 午夜视频免费看 | 久9久9精品视频在线观看 | 免费高清视频日本 | 激情小说图片视频 | 国产资源视频在线观看 | 亚洲第一页视频 | 国产成人久久精品麻豆二区 |