{"id":623,"date":"2024-07-30T19:31:38","date_gmt":"2024-07-30T17:31:38","guid":{"rendered":"https:\/\/blog.sutilweb.eu\/?page_id=623"},"modified":"2025-12-16T16:55:38","modified_gmt":"2025-12-16T15:55:38","slug":"01-introduccion-al-javascript","status":"publish","type":"page","link":"https:\/\/sutilweb.eu\/index.php\/lenguajes\/javascript\/javascript-practico\/01-introduccion-al-javascript\/","title":{"rendered":"01. Introducci\u00f3n al JavaScript"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">En este cap\u00edtulo se hablar\u00e1 de algunos puntos importantes para tener contexto de lo que ha sido <strong>Javascript<\/strong> a lo largo de los a\u00f1os. <strong>Javascript<\/strong> fue creado sobre 1995 por <strong>Brendan Eich<\/strong>, el cual trabajaba en una empresa en los 90, la cual ya no existe, que ten\u00eda al navegador que compet\u00eda con <strong>Internet Explorer<\/strong>, que era <strong>Nextcape Navigator<\/strong>. La empresa <strong>Navigator<\/strong> le pide a <strong>Brendan<\/strong> que cree una tecnolog\u00eda que se pueda implementar en ese navegador web para poder hacer cosas din\u00e1micas como reaccionar a <strong>botones<\/strong>, enviar <strong>formularios<\/strong>&#8230;<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">No confundir Javascript con Java<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">No se debe confundir <strong>Javascript<\/strong> con <strong>Java<\/strong>, son lenguajes completamente distintos. <strong>Javascript<\/strong> tuvo varios nombres al principio, entre ellos <strong>Mokka<\/strong> o <strong>LiveScript<\/strong>, pero por cuestiones de marketing, decidieron rebautizar a este lenguaje con el nombre que conocemos, <strong>Javascript<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Evoluci\u00f3n de Javascript<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">En esta tabla vemos la evoluci\u00f3n que ha sufrido <strong>Javascript<\/strong> a lo largo de estos a\u00f1os.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Edici\u00f3n<\/th><th>Publicaci\u00f3n<\/th><th>Cambios<\/th><\/tr><\/thead><tbody><tr><td>1<\/td><td>1997<\/td><td>Primera edici\u00f3n.<\/td><\/tr><tr><td>2<\/td><td>1998<\/td><td>Cambios editorales para mentener la especificaci\u00f3n completa alineada con el est\u00e1ndar internacional&nbsp;<em>ISO\/IEC 16262<\/em>.<\/td><\/tr><tr><td>3<\/td><td>1999<\/td><td>Se agregaron <strong>expresiones regulares<\/strong>, mejor manejo de&nbsp;<strong>strings<\/strong>, nuevo control de <strong>declaraciones<\/strong>, manejo de <strong>excepciones<\/strong> con&nbsp;<strong><em>try\/catch<\/em><\/strong>, definici\u00f3n m\u00e1s estricta de <strong>errores<\/strong>, formato para la salida num\u00e9rica y otras mejoras.<\/td><\/tr><tr><td>4<\/td><td>Abandonado<\/td><td>La cuarta edici\u00f3n fue abandonada debido a diferencias pol\u00edticas respecto a la complejidad del lenguaje. Muchas caracter\u00edsticas propuestas para la cuarta edici\u00f3n fueron completamente abandonadas, algunas fueron propuestas para la edici\u00f3n <strong>ECMAScript Harmony<\/strong>.<\/td><\/tr><tr><td>5<\/td><td>2009<\/td><td>Agrega el <strong>modo estricto<\/strong>&nbsp;<strong><code>strict mode<\/code><\/strong>, un subconjunto destinado a proporcionar una mejor comprobaci\u00f3n de errores y evitar constructores propensos a errores. Aclara varias ambig\u00fcedades de la tercera edici\u00f3n, y afina el comportamiento de las implementaciones del \u00abmundo real\u00bb que difieren consistentemente desde esa especificaci\u00f3n. Agrega algunas nuevas caracter\u00edsticas, como&nbsp;<strong><code>getters<\/code><\/strong>&nbsp;y&nbsp;<strong><code>setters<\/code><\/strong>, librer\u00eda para el soporte de&nbsp;<strong>JSON<\/strong>, y una m\u00e1s completa reflexi\u00f3n sobre las <strong>propiedades<\/strong> de los <strong>objetos<\/strong>.<\/td><\/tr><tr><td>5.1<\/td><td>2011<\/td><td>Est\u00e1 completamente alineada con la tercera edici\u00f3n del est\u00e1ndar internacional&nbsp;<em>ISO\/IEC 16262:2011<\/em>.<\/td><\/tr><tr><td>&nbsp;<\/td><td>&nbsp;<\/td><td>Apartir del 2015 las actualizaciones son continuas teniendo una versi\u00f3n anual.<\/td><\/tr><tr><td>6<\/td><td>2015<\/td><td><em>ES2015<\/em>&nbsp;<em>aka<\/em>&nbsp;<a href=\"http:\/\/www.ecma-international.org\/ecma-262\/6.0\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>ES6<\/em><\/a>.<\/td><\/tr><tr><td>7<\/td><td>2016<\/td><td><em>ES2016<\/em>&nbsp;<em>aka<\/em>&nbsp;<a href=\"http:\/\/www.ecma-international.org\/ecma-262\/7.0\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>ES7<\/em><\/a>.<\/td><\/tr><tr><td>8<\/td><td>2017<\/td><td><em>ES2017<\/em>&nbsp;<em>aka<\/em>&nbsp;<a href=\"http:\/\/www.ecma-international.org\/ecma-262\/8.0\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>ES8<\/em><\/a>.<\/td><\/tr><tr><td>9<\/td><td>2018<\/td><td><em>ES2018<\/em>&nbsp;<em>aka<\/em>&nbsp;<a href=\"http:\/\/www.ecma-international.org\/ecma-262\/9.0\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>ES9<\/em><\/a>.<\/td><\/tr><tr><td>10<\/td><td>2019<\/td><td><em>ES2019<\/em>&nbsp;<em>aka<\/em>&nbsp;<a href=\"http:\/\/www.ecma-international.org\/ecma-262\/10.0\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>ES10<\/em><\/a>.<\/td><\/tr><tr><td><em>ESNext<\/em><\/td><td>2020<\/td><td>A partir del 2020 las nuevas actualizaciones al est\u00e1ndar simplemente se bautizar\u00e1n como&nbsp;<a href=\"http:\/\/www.ecma-international.org\/ecma-262\/11.0\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>ESNext<\/em><\/a>.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Navegadores<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A partir del a\u00f1o 2015, <a href=\"https:\/\/www.google.com\/intl\/es_es\/chrome\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Chrome<\/strong> <\/a>desbanca a <strong>Internet Explorer<\/strong> como navegador m\u00e1s usado, y los navegadores actuales como <a href=\"https:\/\/www.microsoft.com\/es-es\/edge\/download?form=MA13FJ\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Edge<\/strong><\/a>, <a href=\"https:\/\/www.mozilla.org\/es-ES\/firefox\/new\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Firefox<\/strong><\/a>, <a href=\"https:\/\/www.opera.com\/es?utm_campaign=%2300%20-%20WW%20-%20Search%20-%20EN%20-%20Branded&amp;utm_content=37670026502&amp;gclid=Cj0KCQjwpompBhDZARIsAFD_Fp-Y7nWLjCqiheP7goG3Lh3C6poW-FHxVdIq0balZhtcI1NrHvHc_9UaAnG_EALw_wcB\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Opera<\/strong><\/a>, <strong>Safari<\/strong> y <strong>Chrome<\/strong> tienen la misma ruta cr\u00edtica de como van implementando las caracter\u00edsticas. A d\u00eda de hoy, los navegadores se van poniendo de acuerdo para tratar de soportar las mismas caracter\u00edsticas al mismo, tiempo, ya se pas\u00f3 por la \u00e9poca de la <strong>guerra de los navegadores<\/strong>. A partir de 2015, la gente de <strong>ECMAScript<\/strong> decide tener un est\u00e1ndar vivo, con el que salen nuevas caracter\u00edsticas, es decir, en 2015 hablamos de <strong>ES2015<\/strong> o <strong>ES6,<\/strong> en 2016 de <strong>ES2016<\/strong> o <strong>ES7&#8230;<\/strong> Y en 2020 se empieza a hablar de un nuevo concepto denominado <strong>ESNext,<\/strong> que no es m\u00e1s que un concepto para referirnos a las nuevas caracter\u00edsticas que van a venir.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>En este cap\u00edtulo se hablar\u00e1 de algunos puntos importantes para tener contexto de lo que ha sido Javascript a lo [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":620,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-623","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 este cap\u00edtulo se hablar\u00e1 de algunos puntos importantes para tener contexto de lo que ha sido Javascript a lo [&hellip;]","_links":{"self":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/623","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=623"}],"version-history":[{"count":2,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/623\/revisions"}],"predecessor-version":[{"id":5188,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/623\/revisions\/5188"}],"up":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/620"}],"wp:attachment":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/media?parent=623"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}