Estoy aprendiendo JavaScript y lo han estado haciendo un montón de pruebas en el Chrome de la consola. Incluso si puedo borrar la consola, o utilizar cualquiera de los comandos que he visto en otros hilos (localStorage.clear()) ninguna de las variables se me ha asignado todavía se presentan.

Por ejemplo, si yo hago algo como var name = "Bob";

Chrome consola clara y asignación de variables

Puedo borrar y cerrar la consola, vuelva a abrir, y busque el valor de name, todavía Bob.

Chrome consola clara y asignación de variables

¿Cuál es la mejor manera para borrar estas fuera?

InformationsquelleAutor spex5 | 2015-12-14

6 Comentarios

  1. 30

    Lo que están afectando a la hora de declarar las variables o funciones dentro de la consola del programador es la global del contexto de ejecución, que para los navegadores web es de la ventana.

    Cuando clear() la consola en la que están diciendo Chrome para eliminar todos los visible la historia de estas operaciones, no para borrar los objetos que se han adjuntado a window.

    Para hacer esto de forma manual, debe delete cada objeto por su referencia:

    delete name;
    name //=> undefined

    Si la sobrecarga de tener que repetidamente eliminar varios objetos a través de la delete es demasiado, almacenar cada valor como una propiedad de un objeto, por ejemplo,data, que se puede eliminar, junto con todas las propiedades en una declaración:

    var data = {};
    data.name = 'Bob';
    data.age = 60;
    delete data;
    data.name //=> ReferenceError: data is not defined
    data.age //=> ReferenceError: data is not defined
    • necesidad de recargar la página no es claro para mí. borrar nombre; obras aunque. Prefiero sólo tiene una manera de limpiar la cubierta completamente, sin tener que borrar las tareas individuales. No estoy seguro de por qué refrescante no funciona. Que parece ser una respuesta popular.
    • Tienes razón que para actualizar no funciona – yo nunca había notado que el comportamiento de antes. Se podría adjuntar todos los datos a un objeto, por ejemplo,data = {}; data.name = 'Bob';. Al menos, a continuación, sólo tiene que hacer delete data;.
    • Chrome consola parece ser muy inconsistente. Si estoy utilizando un blanco de la página para actualizar, parece claro que las variables.. pero a veces no. Lo que siempre parece hacer es cerrar y volver a abrir el navegador. Oh, bueno. Bueno suficiente por ahora.
    • var, vamos y const crear no se puede configurar propiedades que no pueden ser eliminados con el operador delete. El JavaScript operador delete elimina una propiedad de un objeto; si no hay más referencias a la misma propiedad se celebrará, finalmente se libera automáticamente.
  2. 24

    Una solución simple a este problema es envolver cualquier código que usted no quiere que en el ámbito global, en forma de invocar la función de la expresión (IIFE). Todas las variables asignadas en función del ámbito de aplicación son removidos cuando la función termina:

    (function() {
    
        //Put your code here...
    
    })();

    Para obtener más información sobre IIFEs: https://en.wikipedia.org/wiki/Immediately-invoked_function_expression

    [Actualización]

    En ES6 se pueden usar bloques (siempre y cuando el uso de let en lugar de var):

    {
    
        //Put your code here...
    
    }

    Para obtener más información sobre los bloques: http://exploringjs.com/es6/ch_core-features.html#sec_from-iifes-to-blocks

    • Yo voto en su respuesta, porque a pesar de no responder a la pregunta, es una solución fresca 🙂
  3. 7

    De compensación de la consola no elimina las variables de la memoria sino que simplemente borra los datos de la interfaz de usuario.

    Necesidad de recargar la página borra los datos de consola. Espero que deben estar bien como usted mencionó que son solo pruebas y aprendizaje de javascript.

    Espero que ayude!

  4. 4

    Simplemente vuelva a Cargar de nuevo contexto con la historia clara y antigua ejecución de comandos

    Las cosas han cambiado mucho en chrome dev tools. delete name no ayuda;

    //for example if you have declared a variable 
    `const x = 2;`
     //Now sometime later you want to use the same variable 
    `const x = 5` you will get an error 
    //if you try to delete it you will get false
    delete x;

    Pero una recarga de la página, mientras que la consola está todavía abierto. se actualiza la consola de contexto y ahora la x no está disponible y se puede volver a definir.
    Espero que esto ayude a alguien pruebas o tratando de las cosas en la consola de chrome.
    yo lo uso mucho.

  5. 0

    Si quieres eliminar esa variable, a continuación,

    delete name;
    • copiado de Vlad el comentario de arriba –> var, vamos y const crear no se puede configurar propiedades que no pueden ser eliminados con el operador delete. El JavaScript operador delete elimina una propiedad de un objeto; si no hay más referencias a la misma propiedad se celebrará, finalmente se libera automáticamente.
  6. 0
    Console.clear()

    El uso de este comando en el navegador de la consola y ver la magia,
    muy útil para el uso y funciona a la perfección como por las mejores prácticas de uso de la consola de chrome,

    • Puede agregar una referencia de lo que este código hace? Enlace a la documentación, etc.
    • uno de nuestros compañeros ha proporcionado una gran aclaración en lo que respecta, link

Dejar respuesta

Please enter your comment!
Please enter your name here