zoukankan      html  css  js  c++  java
  • javascript中的删除方法

    可能呢再开发的过程中呢使用的不是很多,但是碰上呢可以注意下

    1.比如:

      var x = 10;

      delete x;

      console.log(x);

    结果是多少,是10,不是异常也不是undefined;

    再看:

      var person = {

        name : "pipi"

      }

      delete person.name;

      console.log(person.name);//undefined

    由此可以看出:在javascript中delete方法是删除对象的属性而不能删除变量的

    2.顺便看看数组中的删除

      var arr = [1,2,3,4,5];

      delete arr[0];  //

      console.log(arr.toString());   //[,2,3,4,5];

      console.log(arr.length);  //5

      结果会把下标为0 的数字删除掉,而不会减少数组的长度,还会默认占据着

    如果要完全删除呢?

    var arr = [1,2,3,4,5];

    arr.shift(); //这个是从前面开始删除的方法,返回删除的值,长度也会发生变化

    console.log(arr.toString()); 2,3,4,5  

    console.log(arr.length); //4

    //====================

    arr.pop(); //这个是从后面面开始删除的方法,返回删除的值,长度也会发生变化

    console.log(arr.toString()); 2,3,4

    console.log(arr.length); //3

    3.如果需要删除一个变量或者说一个对象,直接赋值为null

    4.引用一句话,来自《你不知道的javascript》

    delete只用来删除对象的(可删除)属性,如果对象的某个属性是某个对象/函数

    的最后一个引用者,对这个属性执行delete操作之后,这个未引用的对象/函数就可以被垃圾回收。

    但是,不要把delete看作一个释放内存的工具(就行C/C++中那样),它就是一个删除对象属性的操作,

    仅此而已。

  • 相关阅读:
    clion打断点不生效
    PHP加密解密
    细说MySQL表操作
    细说MySQL数据库操作
    终端(命令行)连接MySQL
    MySQL结构
    求1!+(1!+3!)+(1!+3!+5!)+...+(1!+3!+5!+7!+9!)的值
    react 生命周期
    React TS 组件 Demo
    react-redux 实现原理
  • 原文地址:https://www.cnblogs.com/sun-rain/p/5005017.html
Copyright © 2011-2022 走看看