原文:垃圾收集器在運行的時候會給存儲在內存中的所有變量都加上標記(當然,可以使用任何標記方式)。然后,它會去掉環境中的變量以及被環境中的變量引用的變量的標記。而在此之后再被加上標記的變量將被視為準備刪除的變量,原因是環境中的變量已經無法訪問到這些變量了。最后,垃圾收集器完成內存清除工作,銷毀那些帶標記的值并回收它們所占用的內存空間。根本理解不了這段話的邏輯,“在此之后再被加上標記的變量將被視為準備刪除的變量”,如果從根結點開始,那它的子節點再訪問父屬性加上了標記,明明可以訪問到怎么說無法訪問阿?而且遍歷作用域鏈的話每個節點都會清除標記阿,為什么會再加上標記?求形象解釋一下這個過程
js 垃圾收集 標記清除過程
慕萊塢森
2019-02-11 17:12:08