{"id":701,"date":"2024-07-30T20:19:08","date_gmt":"2024-07-30T18:19:08","guid":{"rendered":"https:\/\/blog.sutilweb.eu\/?page_id=701"},"modified":"2024-07-30T20:19:08","modified_gmt":"2024-07-30T18:19:08","slug":"001-objeto-console","status":"publish","type":"page","link":"https:\/\/sutilweb.eu\/index.php\/lenguajes\/javascript\/javascript-practico\/06-objetos-y-funciones-del-lenguaje\/001-objeto-console\/","title":{"rendered":"001. Objeto console"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">En los siguientes cap\u00edtulos vamos a ver algunos objetos que son propios de <strong>Javascript<\/strong>, que cuando estamos haciendo proyectos reales, son muy \u00fatiles e importante conocerlos. En este primer cap\u00edtulo vamos a ver el objeto <strong><em>console<\/em><\/strong>.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p class=\"wp-block-paragraph\">En estos cap\u00edtulos hemos estado utilizando el objeto <strong><em>console<\/em> <\/strong>para realizar muchos ejms.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>console<\/em> <\/strong>es un objeto que ya reconoce <strong>Javascript<\/strong>, pero si mandamos a la misma consola la siguiente sintaxis.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">console.log(console);<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Podemos ver todas las caracter\u00edsticas que tiene. Todas las <strong>propiedades<\/strong>, los <strong>m\u00e9todos<\/strong> como pueden ser <strong><em>memory<\/em><\/strong>, que es el espacio en memoria que est\u00e1 usando en m\u00e1quina, <strong><em>debug<\/em><\/strong>, <strong><em>error<\/em><\/strong>, <strong><em>info<\/em><\/strong>&#8230; Salvo la <strong>propiedad <em>memory<\/em><\/strong>, el resto son <strong>m\u00e9todos<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La consola de <strong>Javascript<\/strong> tambi\u00e9n nos permite mandar mensajes como si fueran <strong>alertas<\/strong>, <strong>errores<\/strong>, <strong>informaci\u00f3n<\/strong>, y por supuesto, <strong>logs<\/strong>, que es el tipo de <strong><em>console<\/em> <\/strong>que hemos visto hasta ahora.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">console.log(\"Esto es un registro de lo que ha pasado\");\nconsole.error(\"Esto es un error\");\nconsole.warn(\"Esto es un aviso\");\nconsole.info(\"Esto es informaci\u00f3n\");<\/pre>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Nota<\/strong>: <strong>console.info()<\/strong> es muy parecido a <strong>console.log()<\/strong>.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Veamos un ejm para ver caracter\u00edsticas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&nbsp; &lt;head&gt;\n&nbsp; &nbsp; &lt;meta charset=\"UTF-8\" \/&gt;\n&nbsp; &nbsp; &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" \/&gt;\n&nbsp; &nbsp; &lt;title&gt;Objeto console&lt;\/title&gt;\n&nbsp; &lt;\/head&gt;\n\n&nbsp; &lt;body&gt;\n&nbsp; &nbsp; &lt;h1&gt;Objeto console&lt;\/h1&gt;\n\n&nbsp; &nbsp; &lt;script&gt;\n&nbsp; &nbsp; &nbsp; let nombre = \"Francisco\",\n&nbsp; &nbsp; &nbsp; &nbsp; apellido = \"Paredes\",\n&nbsp; &nbsp; &nbsp; &nbsp; edad = 51;\n\n&nbsp; &nbsp; &nbsp; console.log(nombre);\n&nbsp; &nbsp; &nbsp; console.log(apellido);\n&nbsp; &nbsp; &nbsp; console.log(edad);\n\n&nbsp; &nbsp; &nbsp; \/\/ Podemos pasar todas las variables en un mismo console\n&nbsp; &nbsp; &nbsp; console.log(nombre, apellido, edad);\n\n&nbsp; &nbsp; &nbsp; \/\/ Interpolar texto con variables\n&nbsp; &nbsp; &nbsp; console.log(\n&nbsp; &nbsp; &nbsp; &nbsp; `Hola, mi nombre es ${nombre} ${apellido} y tengo ${edad} a\u00f1os`\n&nbsp; &nbsp; &nbsp; );\n\n&nbsp; &nbsp; &nbsp; \/\/ Uso de comodines como en otros lenguajes de programaci\u00f3n\n&nbsp; &nbsp; &nbsp; console.log(\n&nbsp; &nbsp; &nbsp; &nbsp; \"Hola, mi nombre es %s %s y tengo %d\",\n&nbsp; &nbsp; &nbsp; &nbsp; nombre,\n&nbsp; &nbsp; &nbsp; &nbsp; apellido,\n&nbsp; &nbsp; &nbsp; &nbsp; edad,\n&nbsp; &nbsp; &nbsp; &nbsp; \"a\u00f1os\"\n&nbsp; &nbsp; &nbsp; );\n&nbsp; &nbsp; &lt;\/script&gt;\n&nbsp; &lt;\/body&gt;\n&lt;\/html&gt;<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Existe otra caracter\u00edstica que es <strong><em>console.clear()<\/em><\/strong> que lo que va a hacer es limpiar todo lo que haya estado en la consola.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Veamos m\u00e1s ejms.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">console.log(document); \/\/ Muestra el documento HTML literalmente\nconsole.dir(window): \/\/ Muestra las propiedades, m\u00e9todos y constructores del objeto window\nconsole.dir(document); \/\/ Muestra como en el window todas las propiedades, objetos, m\u00e9todos,\natributos que tiene el document<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Hacer grupos en la consola<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Podemos iniciar un grupo en la consola, vamos a verlo con un ejm.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">console.group(\"Cursos\"); \/\/ Empieza el grupo de consoles\nconsole.log(\"Curso Javascript\");\nconsole.log(\"Curso de PHP\");\nconsole.groupEnd(); \/\/ Termina el grupo de consoles<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Hacer tablas<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Lo har\u00edamos con la siguiente sintaxis.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">console.table(Object.entries(console).sort());<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Lo que hace es mostrarme una tabla ordenada alfab\u00e9ticamente con todas las <strong>propiedades<\/strong> y <strong>m\u00e9todos<\/strong> del <strong>objeto <em>console<\/em><\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mostrar arrays en forma de tabla<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">La sintaxis ser\u00eda la siguiente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp; &nbsp; &nbsp; const numeros = [1, 2, 3, 4, 5],\n&nbsp; &nbsp; &nbsp; &nbsp; vocales = [\"a\", \"e\", \"i\", \"o\", \"u\"];\n\n&nbsp; &nbsp; &nbsp; console.table(numeros);\n&nbsp; &nbsp; &nbsp; console.table(vocales);<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Mostrar objetos en forma de tabla<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Se har\u00eda de forma parecida a como se hace con los <strong>arrays<\/strong>.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp; &nbsp; &nbsp; const francisco = {\n&nbsp; &nbsp; &nbsp; &nbsp; nombre: \"Francisco\",\n&nbsp; &nbsp; &nbsp; &nbsp; apellido: \"Paredes\",\n&nbsp; &nbsp; &nbsp; &nbsp; edad: 51,\n&nbsp; &nbsp; &nbsp; };\n\n&nbsp; &nbsp; &nbsp; console.table(francisco);<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Mostrar tiempo que tarda el c\u00f3digo<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Veamos un ejm<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp; &nbsp; &nbsp; console.time(\"Cuanto tiempo tarda el c\u00f3digo en cargarse\");\n\n&nbsp; &nbsp; &nbsp; const arr = Array(1000000);\n&nbsp; &nbsp; &nbsp; for (let i = 0; i &lt; arr.length; i++) {\n&nbsp; &nbsp; &nbsp; &nbsp; arr[i] = i;\n&nbsp; &nbsp; &nbsp; }\n\n&nbsp; &nbsp; &nbsp; console.timeEnd(\"Cuanto tiempo tarda el c\u00f3digo en cargarse\");\n&nbsp; &nbsp; &nbsp; \/\/ Tanto en console.time() como en console.timeEnd hay que poner el mismo par\u00e1metro para que funcione<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Cuantas veces se repite una l\u00ednea de c\u00f3digo<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Veamos un ejm.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp; &nbsp; &nbsp; for (i = 0; i &lt;= 100; i++) {\n&nbsp; &nbsp; &nbsp; &nbsp; console.count(\"C\u00f3digo for: \");\n&nbsp; &nbsp; &nbsp; &nbsp; console.log(i);\n&nbsp; &nbsp; &nbsp; }<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">console.assert()<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Se trata como de una mini librer\u00eda para hacer pruebas. Veamos un ejm.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp; &nbsp; &nbsp; let x = 3,\n&nbsp; &nbsp; &nbsp; &nbsp; y = 2,\n&nbsp; &nbsp; &nbsp; &nbsp; pruebaXY = \"Se espera que X sea siempre menor que Y\";\n\n&nbsp; &nbsp; &nbsp; console.assert(x &lt; y, { x, y, pruebaXY });<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Estos son algunos de los <strong>m\u00e9todos<\/strong> m\u00e1s importantes a la hora en que estemos trabajando con nuestra consola.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ejercicio completo<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">He aqu\u00ed la sintaxis de un ejercicio completo con los diferentes <strong><em>console.<\/em><\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/\/ Ejercicio: Uso de los diferentes tipos de console\n\n\/\/ Paso 1: Declarar variables\nconst nombre = \"Juan\";\nconst edad = 30;\nconst listaCompras = [\"Manzanas\", \"Pl\u00e1tanos\", \"Leche\", \"Pan\"];\nconst persona = {\nnombre: \"Mar\u00eda\",\nedad: 25,\nocupacion: \"Ingeniera\",\n};\n\n\/\/ Paso 2: Utilizar diferentes m\u00e9todos de console\n\n\/\/ M\u00e9todo console.log() para mostrar mensajes informativos\nconsole.log(\"Bienvenido a la aplicaci\u00f3n.\");\nconsole.log(\"El nombre es:\", nombre);\nconsole.log(\"La edad es:\", edad);\n\n\/\/ M\u00e9todo console.error() para mostrar mensajes de error\nconsole.error(\"\u00a1Error! La operaci\u00f3n no se pudo completar.\");\n\n\/\/ M\u00e9todo console.warn() para mostrar advertencias\nconsole.warn(\"\u00a1Atenci\u00f3n! Quedan pocos productos en el inventario.\");\n\n\/\/ M\u00e9todo console.info() para mostrar informaci\u00f3n detallada\nconsole.info(\"La persona es:\", persona);\n\n\/\/ M\u00e9todo console.table() para mostrar datos en forma de tabla\nconsole.table(listaCompras);\n\n\/\/ M\u00e9todo console.group() y console.groupEnd() para agrupar mensajes\nconsole.group(\"Detalles de la persona:\");\nconsole.log(\"Nombre:\", persona.nombre);\nconsole.log(\"Edad:\", persona.edad);\nconsole.log(\"Ocupaci\u00f3n:\", persona.ocupacion);\nconsole.groupEnd();\n\n\/\/ M\u00e9todo console.time() y console.timeEnd() para medir el tiempo de ejecuci\u00f3n\nconsole.time(\"Tiempo de ejecuci\u00f3n\");\nfor (let i = 0; i &lt; 1000000; i++) {\n\/\/ Simulamos un bucle para medir el tiempo de ejecuci\u00f3n\n}\nconsole.timeEnd(\"Tiempo de ejecuci\u00f3n\");<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>En los siguientes cap\u00edtulos vamos a ver algunos objetos que son propios de Javascript, que cuando estamos haciendo proyectos reales, son muy&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":697,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","footnotes":""},"class_list":["post-701","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Sutil Web","author_link":"https:\/\/sutilweb.eu\/index.php\/author\/sutilweb\/"},"uagb_comment_info":0,"uagb_excerpt":"En los siguientes cap\u00edtulos vamos a ver algunos objetos que son propios de Javascript, que cuando estamos haciendo proyectos reales, son muy...","_links":{"self":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/701","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/comments?post=701"}],"version-history":[{"count":2,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/701\/revisions"}],"predecessor-version":[{"id":703,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/701\/revisions\/703"}],"up":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/697"}],"wp:attachment":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/media?parent=701"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}