top tools tool other network google developer chrome javascript google-chrome google-chrome-devtools

tools - Ver la lista de todas las variables de JavaScript en la consola de Google Chrome



network chrome (12)

En Firebug, la pestaña DOM muestra una lista de todas sus variables y objetos públicos. En la consola de Chrome, debe escribir el nombre de la variable pública u objeto que desea explorar.

¿Hay alguna forma, o al menos un comando, de que la consola de Chrome muestre una lista de todas las variables y objetos públicos? Se ahorrará mucho escribir.


¿Es este el tipo de salida que estás buscando?

for(var b in window) { if(window.hasOwnProperty(b)) console.log(b); }

Esto mostrará una lista de todo lo disponible en el objeto de la window (todas las funciones y variables, por ejemplo, $ y jQuery en esta página, etc.). Aunque, esta es toda una lista; No estoy seguro de lo útil que es ...

De lo contrario, simplemente haga una window y comience a bajar su árbol:

window

Esto le dará a DOMWindow , un objeto expandible / explorable.


Abra la consola y luego ingrese:

  • keys(window) para ver las variables.
  • dir(window) para ver objetos

Como todas las "variables públicas" son de hecho propiedades del objeto de ventana (de la ventana / pestaña que está viendo), puede inspeccionar el objeto de "ventana". Si tiene varios marcos, tendrá que seleccionar el objeto de ventana correcto (como en Firebug) de todos modos.


Cuando se detiene la ejecución del script (por ejemplo, en un punto de interrupción), simplemente puede ver todos los globales en el panel derecho de la ventana Herramientas de desarrollo:


David Walsh tiene una buena solución para esto. Aquí está mi opinión sobre esto, combinando su solución con lo que se ha descubierto en este hilo también.

https://davidwalsh.name/global-variables-javascript

x = {}; var iframe = document.createElement(''iframe''); iframe.onload = function() { var standardGlobals = Object.keys(iframe.contentWindow); for(var b in window) { const prop = window[b]; if(window.hasOwnProperty(b) && prop && !prop.toString().includes(''native code'') && !standardGlobals.includes(b)) { x[b] = prop; } } console.log(x) }; iframe.src = ''about:blank''; document.body.appendChild(iframe);

x ahora tiene solo los globales.


El objeto de window contiene todas las variables públicas, por lo que puede escribirlo en la consola y luego expandir para ver todas las variables / atributos / funciones.


Es posible que desee probar esta extensión Firebug Lite para Chrome.


Escriba la siguiente declaración en la consola javascript:

debugger

Ahora puede inspeccionar el alcance global utilizando las herramientas de depuración normales.

Para ser justos, obtendrás todo en el alcance de la window , incluidas las integradas en el navegador, por lo que podría ser una experiencia como la de una aguja en un pajar. : /


Método actualizado del mismo https://davidwalsh.name/global-variables-javascript mencionado por Avindra: inyecta iframe y compara sus propiedades contentWindow propiedades globales de la ventana.

(function() { var iframe = document.createElement(''iframe''); iframe.onload = function() { var iframeKeys = Object.keys(iframe.contentWindow); Object.keys(window).forEach(function(key) { if(!(iframeKeys.indexOf(key) > -1)) { console.log(key); } }); }; iframe.src = ''about:blank''; document.body.appendChild(iframe); })();


Para ver cualquier variable en Chrome, vaya a "Fuentes", luego "Ver" y agréguela. Si agrega la variable "ventana" aquí, entonces puede expandirla y explorar.


Si desea excluir todas las propiedades estándar del objeto de la ventana y ver los globales específicos de la aplicación, esto los imprimirá en la consola de Chrome:

(function(){var standardGlobals=["top","window","location","external","chrome","document","inlineCSS","target","width","height","canvas","data","DOMURL","img","svg","ctx","url","w","a","speechSynthesis","webkitNotifications","localStorage","sessionStorage","applicationCache","webkitStorageInfo","indexedDB","webkitIndexedDB","crypto","CSS","performance","console","devicePixelRatio","styleMedia","parent","opener","frames","self","defaultstatus","defaultStatus","status","name","length","closed","pageYOffset","pageXOffset","scrollY","scrollX","screenTop","screenLeft","screenY","screenX","innerWidth","innerHeight","outerWidth","outerHeight","offscreenBuffering","frameElement","clientInformation","navigator","toolbar","statusbar","scrollbars","personalbar","menubar","locationbar","history","screen","postMessage","close","blur","focus","ondeviceorientation","ondevicemotion","onunload","onstorage","onresize","onpopstate","onpageshow","onpagehide","ononline","onoffline","onmessage","onhashchange","onbeforeunload","onwaiting","onvolumechange","ontimeupdate","onsuspend","onsubmit","onstalled","onshow","onselect","onseeking","onseeked","onscroll","onreset","onratechange","onprogress","onplaying","onplay","onpause","onmousewheel","onmouseup","onmouseover","onmouseout","onmousemove","onmouseleave","onmouseenter","onmousedown","onloadstart","onloadedmetadata","onloadeddata","onload","onkeyup","onkeypress","onkeydown","oninvalid","oninput","onfocus","onerror","onended","onemptied","ondurationchange","ondrop","ondragstart","ondragover","ondragleave","ondragenter","ondragend","ondrag","ondblclick","oncuechange","oncontextmenu","onclose","onclick","onchange","oncanplaythrough","oncanplay","oncancel","onblur","onabort","onwheel","onwebkittransitionend","onwebkitanimationstart","onwebkitanimationiteration","onwebkitanimationend","ontransitionend","onsearch","getSelection","print","stop","open","showModalDialog","alert","confirm","prompt","find","scrollBy","scrollTo","scroll","moveBy","moveTo","resizeBy","resizeTo","matchMedia","requestAnimationFrame","cancelAnimationFrame","webkitRequestAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","captureEvents","releaseEvents","atob","btoa","setTimeout","clearTimeout","setInterval","clearInterval","TEMPORARY","PERSISTENT","getComputedStyle","getMatchedCSSRules","webkitConvertPointFromPageToNode","webkitConvertPointFromNodeToPage","webkitRequestFileSystem","webkitResolveLocalFileSystemURL","openDatabase","addEventListener","removeEventListener","dispatchEvent"]; var appSpecificGlobals={}; for (var w in window){ if (standardGlobals.indexOf(w)==-1) appSpecificGlobals[w]=window[w]; } console.log(appSpecificGlobals);})()

El script funciona bien como bookmarklet. Para usar la secuencia de comandos como un marcador, cree un nuevo marcador y reemplace la URL con lo siguiente:

javascript:(function(){var standardGlobals=["top","window","location","external","chrome","document","inlineCSS","target","width","height","canvas","data","DOMURL","img","svg","ctx","url","w","a","speechSynthesis","webkitNotifications","localStorage","sessionStorage","applicationCache","webkitStorageInfo","indexedDB","webkitIndexedDB","crypto","CSS","performance","console","devicePixelRatio","styleMedia","parent","opener","frames","self","defaultstatus","defaultStatus","status","name","length","closed","pageYOffset","pageXOffset","scrollY","scrollX","screenTop","screenLeft","screenY","screenX","innerWidth","innerHeight","outerWidth","outerHeight","offscreenBuffering","frameElement","clientInformation","navigator","toolbar","statusbar","scrollbars","personalbar","menubar","locationbar","history","screen","postMessage","close","blur","focus","ondeviceorientation","ondevicemotion","onunload","onstorage","onresize","onpopstate","onpageshow","onpagehide","ononline","onoffline","onmessage","onhashchange","onbeforeunload","onwaiting","onvolumechange","ontimeupdate","onsuspend","onsubmit","onstalled","onshow","onselect","onseeking","onseeked","onscroll","onreset","onratechange","onprogress","onplaying","onplay","onpause","onmousewheel","onmouseup","onmouseover","onmouseout","onmousemove","onmouseleave","onmouseenter","onmousedown","onloadstart","onloadedmetadata","onloadeddata","onload","onkeyup","onkeypress","onkeydown","oninvalid","oninput","onfocus","onerror","onended","onemptied","ondurationchange","ondrop","ondragstart","ondragover","ondragleave","ondragenter","ondragend","ondrag","ondblclick","oncuechange","oncontextmenu","onclose","onclick","onchange","oncanplaythrough","oncanplay","oncancel","onblur","onabort","onwheel","onwebkittransitionend","onwebkitanimationstart","onwebkitanimationiteration","onwebkitanimationend","ontransitionend","onsearch","getSelection","print","stop","open","showModalDialog","alert","confirm","prompt","find","scrollBy","scrollTo","scroll","moveBy","moveTo","resizeBy","resizeTo","matchMedia","requestAnimationFrame","cancelAnimationFrame","webkitRequestAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","captureEvents","releaseEvents","atob","btoa","setTimeout","clearTimeout","setInterval","clearInterval","TEMPORARY","PERSISTENT","getComputedStyle","getMatchedCSSRules","webkitConvertPointFromPageToNode","webkitConvertPointFromNodeToPage","webkitRequestFileSystem","webkitResolveLocalFileSystemURL","openDatabase","addEventListener","removeEventListener","dispatchEvent"]; var $appSpecificGlobals={};for (var w in window){if (standardGlobals.indexOf(w)==-1) $appSpecificGlobals[w]=window[w];} window.$appSpecificGlobals=$appSpecificGlobals;console.log(window.$appSpecificGlobals);})()