2016-08-11 2 views
0

У меня есть не очень маленькое изображение, и я предварительно загрузил его вот так.delete HTMLElement в строгом режиме

//cache the poster 
var img = document.createElement("img"); 
img.src = "http://lorempixel.com/300/200"; 
// to make sure the poster is loaded before the video player appears 
img.addEventListener("load", function() { 
    //img loaded, show video 
}); 
delete img; 

Приведенный выше код в строгом режиме дает мне эту ошибку

Вызов удаления на выражение не допускается в строгом режиме

Я знаю, почему удаление не допускается в строгом Режим. Мои запросы:

  1. Это не займет память/ресурсное пространство?
  2. Если да, то есть способ удалить его?

P.S: Is someObject.img = createElm, а затем удалить свойство лучше?

+2

Если вы не ссылаться на него в другом месте, он будет получать мусора. Вы не можете вручную освободить память в Javascript. Лучшее, что вы можете сделать, это обеспечить, чтобы ничто не ссылалось на значение, тогда это значение будет собрано в течение следующего возможного цикла. Самое близкое к тому, что вы пытаетесь сделать, - это сделать img = null. –

+0

Возможный дубликат [Удаление объектов в JavaScript] (http://stackoverflow.com/questions/742623/deleting-objects-in-javascript) –

+0

[IIFE] (http://stackoverflow.com/questions/8228281/what- is-the-function-construct-in-javascript) - стоит упомянуть. – Emissary

ответ

-1

попробовать сделать «удалить» .Я думаю img.remove() работает

+0

Это функция jQuery и удалит ее из DOM. OP не помещает изображение в DOM. –