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

  • 相关阅读:
    Winsock 2 入门指南
    Winsock 2 入门指南
    [手游新项目历程]-40-linux环境实现C/C++程序崩溃退出时打印栈信息
    1月下旬解题
    poj1226,poj3080
    poj3666
    poj3067
    poj12月其他题解(未完)
    poj1823,3667
    poj2352
  • 原文地址:https://www.cnblogs.com/lyd2016/p/8124074.html
Copyright © 2011-2022 走看看