zoukankan      html  css  js  c++  java
  • Js日常笔记之变量删除

    在Javascript是可以使用delete来手动删除变量,通过这样的方法让GC来回收内存,但在JS中并不是所有的对象都可以被删除的

    JS中通过 varfunction 声明因含有DontDelete,而不可被删除:

    var x = 1;
    delete x; // false
    typeof x; // 1


    function x(){}
    delete x; // false
    typeof x; // "function"



    但是对象的属性、数组成员却是可以删除的:

    var o = { x: 1 };
    delete o.x; // true
    typeof o.x; // undefined

    num = 123;  //因为num前面没有var,所有等价于: this.num = 123, 即当前对象的一个属性。
    delete num;


    因此如果我们要回收某个对象可以使用Object来封装一下。

    与通常对 delete 的理解不同,delete 操作符与直接释放内存无关。内存管理 通过断开引用来间接完成的,查看内存管理页可了解详情。

    delete 操作符会从某个对象上移除指定属性。成功删除的时候回返回 true,否则返回 false

  • 相关阅读:
    OpenGL模板 Mac Cmake OpenGL(Glut) Template
    CodeForces 277A Learning Languages (并检查集合)
    Linux netstat订购具体解释
    POJ 1936 All in All
    他的第一个NDK的Demo
    [ACM] POJ 2418 Hardwood Species (Trie树或map)
    Swift
    Swift
    Swift
    Swift
  • 原文地址:https://www.cnblogs.com/lyd2016/p/8124074.html
Copyright © 2011-2022 走看看