WeakRef

Слабая ссылка на объект.

Время чтения: меньше 5 мин

Это незавершённая статья. Вы можете помочь её закончить! Почитайте о том, как контрибьютить в Доку.

Кратко

Объект, который хранит слабую ссылку на другой. Это значит, что сборщик мусора может игнорировать эту ссылку когда решает, какие объекты очищать (сборщик мусора не собирает объекты, если на них есть ссылки).

Пример

        
          
          class Counter {  constructor(element) {    // Слабая ссылка на какой-то элемент в DOM    this.ref = new WeakRef(element)    this.start()  }}
          class Counter {
  constructor(element) {
    // Слабая ссылка на какой-то элемент в DOM
    this.ref = new WeakRef(element)
    this.start()
  }
}

        
        
          
        
      

Как пишется

Чтобы создать WeakRef, обязательно используйте оператор new. В скобках в качестве аргумента указывают объект, на который ссылается слабая ссылка.

        
          
          new WeakRef(anyTargetElement)
          new WeakRef(anyTargetElement)

        
        
          
        
      

Как понять

В JavaScript есть сильные и слабые ссылки на другие объекты. Наличие сильной ссылки не разрешает сборщику мусора его собрать. Объект со слабой ссылкой можно собрать.