{"id":42963,"date":"2021-08-06T13:44:06","date_gmt":"2021-08-06T11:44:06","guid":{"rendered":"https:\/\/kinsta.com\/?post_type=knowledgebase&#038;p=98008"},"modified":"2025-10-01T21:33:56","modified_gmt":"2025-10-01T19:33:56","slug":"que-es-javascript","status":"publish","type":"post","link":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/","title":{"rendered":"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web"},"content":{"rendered":"<p>\u00bfQui\u00e9n no ha experimentado una solicitud de actualizaci\u00f3n de Java al intentar acceder a ciertos sitios web?<\/p>\n<p>Mientras que mucha gente est\u00e1 familiarizada con Java por las funciones interactivas de los sitios web, los usuarios pueden estar menos familiarizados con JavaScript &#8211; o, de hecho, pueden considerar err\u00f3neamente que ambos son lo mismo.<\/p>\n<p>En este art\u00edculo, discutiremos qu\u00e9 es JavaScript y las diferencias entre Java y JavaScript. A continuaci\u00f3n, ofreceremos una visi\u00f3n general de algunas de las caracter\u00edsticas m\u00e1s significativas de JavaScript.<\/p>\n<p>\u00a1Empecemos!<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h3>Consulta nuestra <a href=\"https:\/\/www.youtube.com\/watch?v=vCWs3oBHLe8\">gu\u00eda en v\u00eddeo<\/a> sobre JavaScript<\/h3>\n<kinsta-video src=\"https:\/\/www.youtube.com\/watch?v=vCWs3oBHLe8\"><\/kinsta-video>\n<h2>\u00bfQu\u00e9 es el JavaScript?<\/h2>\n<p>En pocas palabras, JavaScript <a href=\"https:\/\/kinsta.com\/es\/blog\/lenguajes-script\/\">es un popular lenguaje de programaci\u00f3n de scripts<\/a> para a\u00f1adir funcionalidades interactivas y otros contenidos web din\u00e1micos a las p\u00e1ginas web. Algunos ejemplos conocidos de contenido en JavaScript son los formularios rellenables, las presentaciones de galer\u00edas de fotos y los gr\u00e1ficos animados.<\/p>\n<p>Adem\u00e1s, JavaScript es relativamente intuitivo y f\u00e1cil de aprender. Es un excelente punto de partida para aquellos que buscan aprender m\u00e1s sobre el desarrollo de sitios web.<\/p>\n<p>JavaScript es la \u00faltima capa de funcionalidad en los sitios web altamente interactivos. <a href=\"https:\/\/kinsta.com\/es\/blog\/html-vs-html5\/\">HTML<\/a> proporciona la estructura b\u00e1sica de la p\u00e1gina. <a href=\"https:\/\/kinsta.com\/es\/blog\/css-wordpress\/#what-is-css-editing\">CSS<\/a> es el elemento de moda de tu sitio web: determina el estilo de tu sitio. A continuaci\u00f3n, JavaScript a\u00f1ade emoci\u00f3n.<\/p>\n<p>Cuando se aprende JavaScript, es esencial entender la relaci\u00f3n entre HTML, CSS y JavaScript, y c\u00f3mo se unen para mostrar un sitio web.<\/p>\n<h2>Para qu\u00e9 se usa el JavaScript<\/h2>\n<p>JavaScript <a href=\"https:\/\/www.learnacademy.org\/blog\/javascript-used-for\/\">tiene varias aplicaciones<\/a> que cualquiera que haya visitado p\u00e1ginas web interactivas o aplicaciones para m\u00f3viles probablemente habr\u00e1 experimentado. Aunque el desarrollo de sitios web -incluyendo la adici\u00f3n de elementos como formularios interactivos y animaciones- es el uso m\u00e1s tradicional de JavaScript, tambi\u00e9n se utiliza en:<\/p>\n<ul>\n<li><strong>Juegos basados en el navegador web<\/strong>, incluidos los juegos 2D y 3D<\/li>\n<li><strong>Desarrollo de aplicaciones para m\u00f3viles<\/strong>: beneficioso porque es independiente de la plataforma telef\u00f3nica<\/li>\n<li><strong>Presentaciones<\/strong>: creaci\u00f3n de presentaciones de diapositivas animadas en la web<\/li>\n<\/ul>\n<p>Aunque la mayor\u00eda de las aplicaciones de JavaScript son del lado del cliente, este lenguaje tambi\u00e9n es \u00fatil en aplicaciones del lado del servidor, como la creaci\u00f3n de servidores web.<\/p>\n<figure style=\"width: 1024px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2021\/07\/dinosaur-gameover-1024x358.png\" alt=\"El juego de los dinosaurios, un ejemplo de juego integrado en el navegador web creado con JavaScript\" width=\"1024\" height=\"358\"><figcaption class=\"wp-caption-text\">El juego de los dinosaurios, un ejemplo de juego integrado en el navegador web creado con JavaScript<\/figcaption><\/figure>\n<h2>Diferencias entre Java y JavaScript<\/h2>\n<p>En primer lugar, es importante se\u00f1alar que Java y JavaScript no est\u00e1n relacionados, a pesar de compartir el t\u00e9rmino \u00abJava\u00bb. Tanto Java como JavaScript son lenguajes para desarrollar p\u00e1ginas y aplicaciones web. Sin embargo, tienen claras diferencias, entre ellas:<\/p>\n<ul>\n<li><strong>Programaci\u00f3n orientada a objetos: <\/strong>Java es un <a href=\"https:\/\/kinsta.com\/es\/blog\/programacion-orientada-objetos-python\/\">lenguaje de programaci\u00f3n orientado a objetos<\/a>. JavaScript es un lenguaje de programaci\u00f3n de scripts orientado a objetos.<\/li>\n<li><strong>Sintaxis:<\/strong> La sintaxis de JavaScript no es tan formal o estructurada como la de Java. Por lo tanto, es m\u00e1s sencilla para la mayor\u00eda de los usuarios.<\/li>\n<li><strong>Compilaci\u00f3n:<\/strong> Java es un lenguaje compilado, mientras que JavaScript es un lenguaje interpretado que se interpreta l\u00ednea por l\u00ednea en tiempo de ejecuci\u00f3n; los lenguajes compilados suelen ser m\u00e1s r\u00e1pidos, pero los interpretados suelen ser m\u00e1s flexibles.<\/li>\n<li><strong>Entorno: <\/strong>Las aplicaciones Java se pueden utilizar b\u00e1sicamente en cualquier entorno, ejecut\u00e1ndose en m\u00e1quinas virtuales o en <a href=\"https:\/\/kinsta.com\/es\/cuota-mercado-mundial-navegadores\/\">navegadores<\/a>; JavaScript es solo para navegadores.<\/li>\n<li><strong>Uso de memoria: <\/strong>Java <a href=\"https:\/\/towardsdatascience.com\/java-vs-javascript-which-is-the-best-choice-for-2019-a41ee2d3f78d\">consume m\u00e1s memoria<\/a> que JavaScript, por lo que este \u00faltimo es preferible para las p\u00e1ginas y aplicaciones web.<\/li>\n<\/ul>\n<h2>\u00bfEs seguro JavaScript?<\/h2>\n<p>Aunque JavaScript es ampliamente aceptado y utilizado para el desarrollo web, tiene vulnerabilidades bien conocidas. Uno de los ciberataques m\u00e1s comunes introducidos a trav\u00e9s de las vulnerabilidades de JavaScript es el ataque Cross-site scripting (XSS). Los ciberdelincuentes utilizan los ataques XSS para acceder y robar informaci\u00f3n de identidad.<\/p>\n<p>Para minimizar los ataques, es fundamental <a href=\"https:\/\/kinsta.com\/es\/blog\/herramientas-de-revision-de-codigo\/\">probar y revisar el c\u00f3digo<\/a> durante el desarrollo. Los m\u00e9todos de prueba, como las pruebas de seguridad de aplicaciones est\u00e1ticas y din\u00e1micas (SAST y DAST), ayudan a identificar las vulnerabilidades en todos los puntos del ciclo de vida de desarrollo del software.<\/p>\n<p>Seg\u00fan los analistas de seguridad de <a href=\"https:\/\/www.clouddefense.ai\/sast-static-application-security-testing\">Cloud Defense<\/a>, SAST comprueba si tu c\u00f3digo viola las normas de seguridad y compara las vulnerabilidades encontradas entre las ramas de origen y destino. Recibir\u00e1s una notificaci\u00f3n si las dependencias de tu proyecto se ven afectadas por las nuevas vulnerabilidades reveladas.<\/p>\n<h2>Vanilla JavaScript<\/h2>\n<p>Vanilla JavaScript es una implementaci\u00f3n ligera del lenguaje JavaScript puro sin bibliotecas a\u00f1adidas. Aqu\u00ed, el t\u00e9rmino \u00abvainilla\u00bb se refiere a un JavaScript no personalizado.<\/p>\n<p>Muchas empresas importantes utilizan <a href=\"http:\/\/vanilla-js.com\/\">Vanilla JS<\/a>, como Google, Microsoft, Apple, Amazon y otras. Vanilla JavaScript es una excelente manera de <a href=\"https:\/\/kinsta.com\/es\/blog\/mejor-lenguaje-de-programacion-para-aprender\/#javascript\">aprender los fundamentos de la programaci\u00f3n en JavaScript<\/a> antes de a\u00f1adir lazos a caracter\u00edsticas m\u00e1s avanzadas ofrecidas en las bibliotecas.<\/p>\n<h2>Bibliotecas de JavaScript<\/h2>\n<p>Una biblioteca de JavaScript es una colecci\u00f3n de c\u00f3digo pre-escrito que realiza determinadas funciones. Las bibliotecas permiten incluso a los usuarios principiantes construir r\u00e1pidamente sitios web \u00fatiles. Y ahorran tanto a los usuarios novatos como a los experimentados un tiempo considerable en la construcci\u00f3n de sitios y aplicaciones.<\/p>\n<p>Aunque hay <a href=\"https:\/\/kinsta.com\/es\/blog\/bibliotecas-javascript\/\">muchas bibliotecas de JavaScript<\/a>, algunas de las m\u00e1s populares son jQuery, Anime.js, Animate on Scroll y Leaflet.js.<\/p>\n<h2>C\u00f3mo se relaciona JavaScript con los frameworks de los sitios web<\/h2>\n<p>Los frameworks de sitios web son constructores de sitios web avanzados, normalmente con extensas bibliotecas de funcionalidad pre-construida y conjuntos de pruebas. Puede que est\u00e9s familiarizado con los frameworks del lado del servidor como <a href=\"https:\/\/kinsta.com\/es\/blog\/que-es-laravel\/\">Laravel<\/a>, Ruby on Rails o Django. Pero tambi\u00e9n hay varios marcos populares basados en JavaScript del lado del cliente, como React.js, Vue.js y <a href=\"https:\/\/kinsta.com\/es\/blog\/que-es-node-js\/\">Node.js<\/a>.<\/p>\n<figure style=\"width: 900px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2021\/06\/reactjs2.jpg\" alt=\"Biblioteca React \" width=\"900\" height=\"449\"><figcaption class=\"wp-caption-text\">Biblioteca React (Fuente de la imagen: Betica)<\/figcaption><\/figure>\n<h2>El DOM de JavaScript<\/h2>\n<p>El DOM, o Modelo de Objetos del Documento, act\u00faa como una interfaz entre un lenguaje de programaci\u00f3n como JavaScript y un documento subyacente &#8211; espec\u00edficamente, documentos HTML y XML.<\/p>\n<p>El DOM es un <a href=\"https:\/\/www.w3.org\/TR\/DOM-Requirements\/\">est\u00e1ndar del W3C (World Wide Web Consortium)<\/a>, definido como \u00abuna interfaz independiente de la plataforma y el lenguaje que permite a los programas y scripts acceder y actualizar din\u00e1micamente el contenido, la estructura y el estilo de un documento\u00bb. Los documentos consisten en una colecci\u00f3n de elementos individuales y propiedades (<a href=\"https:\/\/kinsta.com\/es\/blog\/mejores-editores-texto\/\">texto<\/a>, botones, enlaces, etc.).<\/p>\n<h2>Componentes b\u00e1sicos de JavaScript<\/h2>\n<p>Al igual que otros <a href=\"https:\/\/kinsta.com\/es\/blog\/mejor-lenguaje-de-programacion-para-aprender\/\">lenguajes de programaci\u00f3n de scripts<\/a>, JavaScript utiliza variables para identificar las ubicaciones de almacenamiento de los datos. Las variables pueden ser globales (accesibles por cualquier funci\u00f3n del c\u00f3digo) o locales, tambi\u00e9n conocidas como \u00abblock-scoped\u00bb (accesibles solo en el bloque donde se declaran).<\/p>\n<p>Las variables pueden contener valores fijos (constantes conocidas como literales) o valores alterables. JavaScript tiene una sintaxis particular para declarar (crear) constantes y variables, y asignarles valores.<\/p>\n<h3>Declarar una constante<\/h3>\n<p>Las constantes verdaderas se crean <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/JavaScript\/Reference\/Statements\/const\">utilizando una declaraci\u00f3n <code>const<\/code><\/a>. <code>Const<\/code> crea constantes de solo lectura, inmutables y de \u00e1mbito de bloque (\u00abde \u00e1mbito de bloque\u00bb significa que la constante no es accesible desde fuera de su bloque declarado).<\/p>\n<p>Un ejemplo de uso de const para crear una constante es:<\/p>\n<pre><code class=\"language-javascript\">const GOLDEN_RATIO = 1.618; \/\/ create a constant named GOLDEN_RATIO with value 1.618<\/code><\/pre>\n<p>Observa el uso de may\u00fasculas para nombrar la constante; es una convenci\u00f3n de nomenclatura com\u00fanmente aceptada, aunque no es obligatoria. Los nombres de las variables, incluyendo los nombres de las const, deben comenzar con una letra (min\u00fascula o may\u00fascula), el car\u00e1cter de subrayado (<code>_<\/code>), o el signo de d\u00f3lar (<code>$<\/code>). Son sensibles a las may\u00fasculas y min\u00fasculas, as\u00ed que aseg\u00farate de recordar c\u00f3mo nombras tus variables.<\/p>\n<p>Las constantes, a diferencia de las variables, deben tener un valor asignado al crearse. La siguiente sentencia devolver\u00e1 un error:<\/p>\n<pre><code class=\"language-javascript\">const GOLDEN_RATIO;<\/code><\/pre>\n<h3>Declarar una variable<\/h3>\n<p>Las variables se declaran <a href=\"https:\/\/www.codejava.net\/java-core\/the-java-language\/var-keyword-in-java\">con la palabra clave <code>var<\/code><\/a>. No es necesario asignarles un valor en el momento de la declaraci\u00f3n, aunque es permisible hacerlo y se hace con frecuencia. La palabra clave <code>var<\/code> tiene alcance global en lugar de alcance de bloque (a menos que est\u00e9 en una funci\u00f3n, entonces tiene alcance de funci\u00f3n).<\/p>\n<pre><code class=\"language-javascript\">var variable1; \/\/ declare a variable called variable1\n\nvar variable2 = \"2021\"; \/\/ declare a string variable called variable2 and initialize with value 2021\n\nvariable1 = \"Thank goodness it's\" \/\/ assign string value to previously declared variable variable1\n\nconsole.log(variable1 + \" \" + variable2); \/\/ display \"Thank goodness it's 2021\"<\/code><\/pre>\n<p>Ten en cuenta que las declaraciones en JavaScript deben terminar con un punto y coma. Puedes crear comentarios usando <code>\/\/<\/code> &#8211; JavaScript ignora cualquier cosa entre <code>\/\/<\/code> y el final de la l\u00ednea.<\/p>\n<p>Las variables pueden contener una variedad de tipos de datos, incluyendo n\u00fameros, cadenas y objetos. La asignaci\u00f3n de variables en JavaScript es din\u00e1mica. Por lo tanto, se puede asignar una variable a un tipo de datos diferente en el mismo c\u00f3digo.<\/p>\n<h2>Hoisting<\/h2>\n<p>Ahora que entiendes la <a href=\"https:\/\/scotch.io\/courses\/10-need-to-know-javascript-concepts\/declaring-javascript-variables-var-let-and-const\">declaraci\u00f3n de variables en JavaScript<\/a>, podemos discutir c\u00f3mo JavaScript trata la ubicaci\u00f3n de la declaraci\u00f3n de variables. La pr\u00e1ctica de codificaci\u00f3n com\u00fanmente aceptada exige declarar las variables antes, o al mismo tiempo, de definirlas. Algunos lenguajes de programaci\u00f3n lo exigen.<\/p>\n<p>Sin embargo, JavaScript permite declarar las variables despu\u00e9s de definirlas o utilizarlas. Usando una caracter\u00edstica llamada hoisting, JavaScript mueve las declaraciones a la parte superior de un script o funci\u00f3n actual. Aunque la elevaci\u00f3n puede simplificar la programaci\u00f3n al permitir que un programador corrija un fallo de declaraci\u00f3n sin tener que retroceder por el c\u00f3digo, declarar variables despu\u00e9s de su uso no es coherente con <a href=\"https:\/\/kinsta.com\/es\/blog\/mejores-practicas-diseno-web\/\">las mejores pr\u00e1cticas de programaci\u00f3n<\/a>.<\/p>\n<p>La elevaci\u00f3n tambi\u00e9n puede causar problemas inesperados, principalmente porque la elevaci\u00f3n solo se aplica a la declaraci\u00f3n. Si una variable se declara e inicializa en la misma sentencia, el hoisting crear\u00e1 una declaraci\u00f3n en la parte superior del bloque y asignar\u00e1 a la variable un valor indefinido. As\u00ed, cualquier uso de la variable en el bloque antes de la declaraci\u00f3n real asumir\u00e1 que la variable est\u00e1 indefinida en lugar de tener el valor de inicializaci\u00f3n.<\/p>\n<p>Utilizamos el ejemplo anterior para revisar el comportamiento de la elevaci\u00f3n:<\/p>\n<pre><code class=\"language-javascript\">var variable_1 = \"Thank goodness it's\"; \/\/ declare and initialize a string variable called variable_1\n\nconsole.log(variable_1 + \" \" + variable_2); \/\/\n\nvar variable_2 = \"2021\" \/\/ declare and initialize a string variable called variable2<\/code><\/pre>\n<p>Mientras que la elevaci\u00f3n mueve la declaraci\u00f3n <code>variable_2<\/code> a la parte superior del bloque, no mueve el valor asignado. Esta l\u00f3gica funciona m\u00e1s o menos equivalente a la siguiente sintaxis:<\/p>\n<pre><code class=\"language-javascript\">var variable_1 = \"Thank goodness it's\"; \/\/ declare and initialize a string variable called variable_1\n\nvar variable_2;\n\nconsole.log(variable1 + \" \" + variable2); \/\/\n\nvariable_2 = \"2021\" \/\/ assign string value to variable2<\/code><\/pre>\n<p>En cualquiera de los dos casos, el valor final \u00abMenos mal que estamos en 2021\u00bb no forma parte de la salida.<\/p>\n<p>Te recomendamos que utilices la mejor pr\u00e1ctica de declarar las variables para evitar posibles problemas y crear un c\u00f3digo m\u00e1s limpio.<\/p>\n<h2>Objetos<\/h2>\n<p>JavaScript se basa <a href=\"https:\/\/javascript.info\/object-methods\">en el concepto de objetos<\/a>. Los objetos son contenedores que pueden encerrar propiedades, m\u00e9todos o ambos.<\/p>\n<p>Considera un ejemplo sencillo. Tienes un objeto llamado \u00abpa\u00eds\u00bb. Sus propiedades incluyen su nombre, continente, capital y poblaci\u00f3n. Puede crear este objeto de varias maneras con JavaScript.<\/p>\n<p>En primer lugar, puedes utilizar el enfoque de literal de objeto o inicializador de objeto:<\/p>\n<pre><code class=\"language-javascript\">var country = {\n\n    name:\"France\",\n\n    continent:\"Europe\",\n\n    capital:\"Paris\",\n\n    population:62250000;\n\n}<\/code><\/pre>\n<p>Tambi\u00e9n se puede instanciar un objeto y luego asignar sus propiedades:<\/p>\n<pre><code class=\"language-javascript\">var country = new Object();\n\ncountry.name = \"France\";\n\ncountry.continent = \"Europe\";\n\ncountry.capital = \"Paris\";\n\ncountry.population = 62250000;<\/code><\/pre>\n<p>Ten en cuenta que para referirse a las propiedades de un objeto se utiliza la sintaxis <code>object.property<\/code>.<\/p>\n<p>Por \u00faltimo, se pueden crear objetos mediante funciones constructoras:<\/p>\n<pre><code class=\"language-javascript\">function country(name, continent, capital, population) {\n\n    country.name = name;\n\n    country.continent = continent;\n\n    country.capital = capital;\n\n    country.population = population;\n\n}<\/code><\/pre>\n<p>La creaci\u00f3n de una instancia del objeto se har\u00eda entonces mediante:<\/p>\n<pre><code class=\"language-javascript\">france = new country(\"France\",\"Europe\",\"Paris\",62250000)<\/code><\/pre>\n<p>Las propiedades de los objetos pueden ser variables o funciones. Como se explica m\u00e1s adelante, cuando una propiedad de objeto es una funci\u00f3n, se llama m\u00e9todo.<\/p>\n<h3>Objetos vs. Clases<\/h3>\n<p>En pocas palabras, una clase es una plantilla de estructura gen\u00e9rica para un objeto. Las clases utilizan la forma de constructor para describir objetos.<\/p>\n<pre><code class=\"language-javascript\">class country {\n\n    Constructor (name,continent,capital,population) {\n\n        country.name = name;\n\n        country.continent = continent;\n\n        country.capital = capital;\n\n        country.population = population;\n\n    }\n\n}<\/code><\/pre>\n<p>Al igual que los objetos, las clases pueden tener m\u00e9todos.<\/p>\n<h2>Trabajar con constantes y variables<\/h2>\n<p>Al igual que con otros lenguajes, Java <a href=\"https:\/\/www.edureka.co\/blog\/operators-in-java\/\">tiene varios tipos de operadores<\/a> para usar con variables y funciones, la mayor\u00eda de los cuales ser\u00e1n inmediatamente reconocibles:<\/p>\n<ul>\n<li>Operadores de asignaci\u00f3n (<code>=<\/code>, <code>+=<\/code>, <code>-=<\/code>, <code>*=<\/code>, <code>\/=<\/code>, <code>%=<\/code>)<\/li>\n<li>Operadores de comparaci\u00f3n (<code>==<\/code>, <code>===<\/code>, <code>!=<\/code>, <code>!==<\/code>, <code>&gt;<\/code>, <code>&gt;=<\/code>, <code>&lt;<\/code>, <code>&lt;=<\/code>)<\/li>\n<li>Operadores Bitwise y Logical (ver m\u00e1s abajo)<\/li>\n<li>Operadores aritm\u00e9ticos (<code>+<\/code>, <code>-<\/code>, <code>*<\/code>, <code>\/<\/code>, <code>%<\/code>, <code>++<\/code>, <code>--<\/code>)<\/li>\n<li>Operadores especiales<\/li>\n<\/ul>\n<p>Algunos operadores son menos familiares para <a href=\"https:\/\/kinsta.com\/es\/blog\/contratar-desarrollador-de-wordpress\/\">los programadores<\/a> novatos, como los operadores de comparaci\u00f3n id\u00e9nticos y no id\u00e9nticos.<\/p>\n<p><code>===<\/code> compara si dos operandos tienen el mismo valor y tipo (es decir, son id\u00e9nticos). <code>!==<\/code><span style=\"font-family: Roboto, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;font-size: 1rem\"> compara si dos operandos no son id\u00e9nticos.<\/span><\/p>\n<p>Considera el siguiente ejemplo:<\/p>\n<pre><code class=\"language-javascript\">var variable_1 = 5; \/\/ declare variable_1 and assign numeric value 5\n\nvar variable_2 = \"5\"; \/\/ declare variable_2 and assign string value \"5\"\n\nconsole.log(variable_1 === variable_2);\n\nconsole.log(variable_1 !== variable_2);<\/code><\/pre>\n<p>La salida de este fragmento de c\u00f3digo ser\u00eda:<\/p>\n<pre><code class=\"language-javascript\">FALSE\nTRUE<\/code><\/pre>\n<p>Tambi\u00e9n es esencial entender la diferencia entre <code>=<\/code> (un operador de asignaci\u00f3n) y <code>==<\/code> (un operador de comparaci\u00f3n).<\/p>\n<p>Mientras que <code>=<\/code> establece el valor de una variable, <code>==<\/code> comprueba si dos operandos tienen el mismo valor, incluso si una variable tiene un valor determinado. No debe utilizar el operador <code>=<\/code> en sentencias condicionales (como las sentencias IF) para comprobar la equivalencia.<\/p>\n<h3>Operadores Bitwise y Logical<\/h3>\n<p>JavaScript admite las operaciones AND (<code>&<\/code> ), OR (<code>|<\/code>), NOT (<code>~<\/code>) y XOR (<code>^<\/code>). En JavaScript, se conocen como operadores a nivel de bits. Las operaciones a nivel de bits convierten los operandos en representaciones binarias de 32 bits antes de operar (por ejemplo, 20 se convierte en 10100). Estas operaciones se denominan bitwise porque <a href=\"https:\/\/www.guru99.com\/c-bitwise-operators.html\">comparan los operandos convertidos<\/a> bit a bit, y luego devuelven un resultado binario de 32 bits convertido en un entero.<\/p>\n<p>Ejemplo:<\/p>\n<pre><code class=\"language-javascript\">var variable_1 = 20;\n\nvar variable_2 = 50;\n\nconsole.log(variable_1 | variable_2) \/\/ display the result of variable_1 OR variable_2<\/code><\/pre>\n<p>Convierte los operandos a binario:<\/p>\n<pre><code class=\"language-javascript\">20 = 010100\n\n50 = 110010<\/code><\/pre>\n<p>Una operaci\u00f3n OR devuelve verdadero (1) cuando cualquiera de los dos bits es 1, por lo que el valor de comparaci\u00f3n mostrado es 110110 o 53. En JavaScript, el t\u00e9rmino operador l\u00f3gico se refiere a las operaciones cuyos operandos solo tienen los valores booleanos 0 o 1. Los operadores l\u00f3gicos de JavaScript son <code>&&<\/code> (AND l\u00f3gico), <code>||<\/code> (OR l\u00f3gico) y <code>!<\/code> (NOT l\u00f3gico).<\/p>\n<pre><code class=\"language-javascript\">var variable_1;\n\nvar variable_2;\n\nvariable _1 = (6 &gt; 5); \/\/ sets variable_1 to true or 1\n\nvariable_2 = (7 &lt;= 6); \/\/ sets variable_2 to false or 0\n\nConsole.log(variable_1 && variable_2); \/\/ displays 0<\/code><\/pre>\n<h2>Funciones y m\u00e9todos<\/h2>\n<p>Piensa en las funciones <a href=\"https:\/\/www.geeksforgeeks.org\/function-interface-in-java-with-examples\/\">como los caballos de batalla de JavaScript<\/a>. Son bloques de c\u00f3digo que realizan tareas espec\u00edficas. Si est\u00e1s familiarizado con los procedimientos y subrutinas de otros lenguajes de programaci\u00f3n, reconocer\u00e1s inmediatamente las funciones.<\/p>\n<p>Las funciones se definen utilizando la siguiente sintaxis:<\/p>\n<pre><code class=\"language-javascript\">function function_name(parameter list) {\n\n    \/\/ tasks to be performed\n\n}<\/code><\/pre>\n<p>La definici\u00f3n de las funciones es solo el primer paso; m\u00e1s tarde hay que invocar las funciones utilizando <code>()<\/code> en el c\u00f3digo:<\/p>\n<h3>$()<\/h3>\n<p>La funci\u00f3n <code>$()<\/code> es la abreviatura del m\u00e9todo getElementByID, que, como se ha indicado anteriormente, devuelve el ID de un elemento espec\u00edfico de un DOM HTML. Se utiliza frecuentemente para manipular elementos en un documento. <code>$()<\/code> permite una codificaci\u00f3n de JavaScript m\u00e1s corta y eficiente.<\/p>\n<p>M\u00e9todo tradicional:<\/p>\n<pre><code class=\"language-javascript\">document.getElementByID(\"element_id\")\n\n$() method:\n\n$(\"element_id\")<\/code><\/pre>\n<h3>Caracter\u00edsticas vs. M\u00e9todo<\/h3>\n<p>Las funciones realizan tareas; los m\u00e9todos son propiedades de los objetos que contienen una definici\u00f3n funcional. La sintaxis para llamar a los m\u00e9todos es <code>object.function()<\/code>. Las funciones son aut\u00f3nomas; los m\u00e9todos est\u00e1n asociados a los objetos.<\/p>\n<p>En el ejemplo anterior, el m\u00e9todo <code>document.getElementByID(\"element_id\")<\/code> hace referencia a un objeto (<code>document<\/code>) y a una propiedad asociada a ese objeto (<code>getElementbyID()<\/code>).<\/p>\n<p>Hay dos tipos de m\u00e9todos en JavaScript:<\/p>\n<ul>\n<li>M\u00e9todos de instancia<\/li>\n<li>M\u00e9todos est\u00e1ticos<\/li>\n<\/ul>\n<p>Los m\u00e9todos de instancia pueden acceder y manipular las propiedades de una instancia de objeto. Los m\u00e9todos de instancia tambi\u00e9n pueden llamar a otro m\u00e9todo de instancia o a un m\u00e9todo est\u00e1tico.<\/p>\n<p>Los m\u00e9todos est\u00e1ticos contienen l\u00f3gica relacionada con una clase en lugar de una instancia de la misma. Para crear un m\u00e9todo est\u00e1tico, debe utilizar la palabra static antes de la definici\u00f3n de la funci\u00f3n. Los m\u00e9todos est\u00e1ticos s\u00f3lo pueden acceder a los campos est\u00e1ticos; no pueden acceder a los campos de instancia.<\/p>\n<h2>Promesas en JavaScript<\/h2>\n<p>Una promesa es un objeto que produce <a href=\"https:\/\/www.freecodecamp.org\/news\/javascript-es6-promises-for-beginners-resolve-reject-and-chaining-explained\/\">un resultado en un momento futuro<\/a>. En la terminolog\u00eda de JavaScript, las promesas se conocen como producci\u00f3n y consumo de c\u00f3digo.<\/p>\n<p>Las funciones pueden tardar un <a href=\"https:\/\/kinsta.com\/es\/blog\/herramientas-apm\/#why-you-should-be-using-an-apm-tool\">tiempo indeterminado y significativo<\/a> en completarse. El c\u00f3digo consumidor espera los resultados del c\u00f3digo productor as\u00edncrono antes de ejecutar sus funciones. Las promesas definen la relaci\u00f3n entre el c\u00f3digo productor y el c\u00f3digo consumidor.<\/p>\n<p>Las promesas tienen tres estados posibles: pendiente, cumplido o rechazado. En la definici\u00f3n de una promesa se especifican dos argumentos: resolver o rechazar. Pendiente es el estado inicial de una promesa y significa que la promesa no se ha cumplido ni rechazado. Cumplida implica que la promesa ha vuelto resuelta. Rechazada significa que la promesa ha regresado. Una promesa que ya no est\u00e1 en estado pendiente se considera resuelta.<\/p>\n<p>La sintaxis de ejemplo para crear una promesa es:<\/p>\n<pre><code class=\"language-javascript\">var newPromise = new Promise(\n\n    function(resolve, reject) {\n\n        \/\/ condition to be tested\n\n    }\n\n)<\/code><\/pre>\n<h2>Cerramientos en JavaScript<\/h2>\n<p>Los cierres son una caracter\u00edstica de JavaScript <a href=\"https:\/\/www.tutorialsteacher.com\/javascript\/closure-in-javascript\">que a menudo desconcierta a los programadores<\/a>, aunque no son tan complicados. Los cierres de JavaScript son m\u00e9todos para abordar el funcionamiento de las funciones anidadas. En concreto, los cierres permiten que una funci\u00f3n interna acceda al contenido de una funci\u00f3n padre, adem\u00e1s de las variables globales a las que normalmente se puede acceder. Ten en cuenta que mientras la funci\u00f3n interna tiene acceso a las variables de la funci\u00f3n externa, lo contrario no es cierto.<\/p>\n<p>Para entender los cierres, debes recordar los fundamentos del \u00e1mbito. Las variables dentro de una funci\u00f3n son generalmente accesibles solo desde esa funci\u00f3n, y el \u00e1mbito se crea por llamada, no gen\u00e9ricamente para la funci\u00f3n. Los cierres solucionan el hecho de que las variables normalmente desaparecen despu\u00e9s de que una funci\u00f3n se complete. Tambi\u00e9n permiten que las variables sigan siendo accesibles despu\u00e9s de que una funci\u00f3n se haya ejecutado.<\/p>\n<p>Considera el siguiente c\u00f3digo de ejemplo:<\/p>\n<pre><code class=\"language-javascript\">function outer_closure_function() {\n\n    var outer_variable = \"we want to keep the outer variable\";\n\n    var inner_closure_function = function() {\n\n        inner_variable = \"use closures because\"\n\n        console.log(inner_variable + \" \" + outer_variable);\n\n    }\n\n    return inner_closure_function;\n\n}\n\nvar closure = outer_closure_function(); \/\/ returns a reference to inner_closure_function\n\nclosure(); \/\/ displays \"use closures because we want to keep the outer variable\"<\/code><\/pre>\n<p>Para entender c\u00f3mo funciona este cierre, recorre el c\u00f3digo l\u00ednea por l\u00ednea. En primer lugar, se define la funci\u00f3n externa y luego una variable asociada a ella. A continuaci\u00f3n, se define la funci\u00f3n interna. Es importante tener en cuenta que no has llamado a la funci\u00f3n interna, solo la has definido. A continuaci\u00f3n hay una sentencia que devuelve la funci\u00f3n interna. Pero lo que devuelve no es el resultado de la funci\u00f3n interna, sino la propia funci\u00f3n.<\/p>\n<p>As\u00ed que cuando se define el cierre como <code>outer_closure_function<\/code>, no devuelve el valor real de la funci\u00f3n interna. En su lugar, devuelve una referencia a <code>inner_closure_function<\/code>. A pesar de que la funci\u00f3n externa se ha completado despu\u00e9s de esta declaraci\u00f3n y <code>outer_variable<\/code> oficialmente ya no existe. Pero todav\u00eda se conserva en la referencia a <code>inner_closure_function<\/code>. Ahora cuando se llama a closure en la \u00faltima sentencia, se muestra el resultado deseado.<\/p>\n<p>Para entender mejor los cierres, deber\u00edas <a href=\"https:\/\/kinsta.com\/es\/blog\/mejores-editores-texto\/\">codificar y probar t\u00fa mismo algunos ejemplos<\/a>. Se necesita tiempo para hacerlos bien. Adem\u00e1s, las actualizaciones y pruebas repetidas te ayudar\u00e1n a crear una mentalidad de desarrollo \u00e1gil.<\/p>\n<p>Pero a medida que vayas avanzando, ten siempre presente los <a href=\"https:\/\/kinsta.com\/es\/ebooks\/wordpress\/como-asegurar-sitios-wordpress\/\">problemas de seguridad<\/a>: JavaScript puede ser susceptible de sufrir graves problemas de seguridad, como <a href=\"https:\/\/kinsta.com\/es\/blog\/inyeccion-sql\/\">inyecciones SQL y LDAP<\/a>, ataques XSS, etc.<\/p>\n<h2>Resumen<\/h2>\n<p>Si est\u00e1s interesado en hacer m\u00e1s cosas con tus p\u00e1ginas web de las que puedes conseguir con servicios out-of-the-box como Wix y Square, deber\u00edas considerar aprender JavaScript. Es una introducci\u00f3n sencilla y f\u00e1cil de aprender a la <a href=\"https:\/\/kinsta.com\/es\/blog\/monitoreo-rendimiento-aplicaciones\/\">programaci\u00f3n de sitios web y aplicaciones<\/a> que puede ayudarte a a\u00f1adir caracter\u00edsticas altamente interactivas a tu sitio sin invertir demasiado tiempo en el proceso de aprendizaje.<\/p>\n<p>JavaScript es tambi\u00e9n una excelente manera de empezar a <a href=\"https:\/\/kinsta.com\/developer-roles\/coding-skills-at-kinsta\/\">desarrollar tus habilidades de codificaci\u00f3n<\/a>, si eventualmente decides pasar al siguiente nivel.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00bfQui\u00e9n no ha experimentado una solicitud de actualizaci\u00f3n de Java al intentar acceder a ciertos sitios web? Mientras que mucha gente est\u00e1 familiarizada con Java por &#8230;<\/p>\n","protected":false},"author":178,"featured_media":42965,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[1297],"class_list":["post-42963","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-tutoriales-javascript"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web<\/title>\n<meta name=\"description\" content=\"Aprende qu\u00e9 es JavaScript en detalle, sus principales caracter\u00edsticas, ventajas y c\u00f3mo se diferencia de Java. Tambi\u00e9n exploraremos JS con ejemplos de c\u00f3digo.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web\" \/>\n<meta property=\"og:description\" content=\"Aprende qu\u00e9 es JavaScript en detalle, sus principales caracter\u00edsticas, ventajas y c\u00f3mo se diferencia de Java. Tambi\u00e9n exploraremos JS con ejemplos de c\u00f3digo.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinsta.es\/\" \/>\n<meta property=\"article:published_time\" content=\"2021-08-06T11:44:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-10-01T19:33:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Nahla Davies\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Aprende qu\u00e9 es JavaScript en detalle, sus principales caracter\u00edsticas, ventajas y c\u00f3mo se diferencia de Java. Tambi\u00e9n exploraremos JS con ejemplos de c\u00f3digo.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg\" \/>\n<meta name=\"twitter:creator\" content=\"@Kinsta_ES\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_ES\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nahla Davies\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/\"},\"author\":{\"name\":\"Nahla Davies\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/7be3f509e7393507bdeb76947810fcd5\"},\"headline\":\"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web\",\"datePublished\":\"2021-08-06T11:44:06+00:00\",\"dateModified\":\"2025-10-01T19:33:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/\"},\"wordCount\":3263,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/es\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg\",\"inLanguage\":\"es\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/\",\"url\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/\",\"name\":\"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg\",\"datePublished\":\"2021-08-06T11:44:06+00:00\",\"dateModified\":\"2025-10-01T19:33:56+00:00\",\"description\":\"Aprende qu\u00e9 es JavaScript en detalle, sus principales caracter\u00edsticas, ventajas y c\u00f3mo se diferencia de Java. Tambi\u00e9n exploraremos JS con ejemplos de c\u00f3digo.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg\",\"width\":1460,\"height\":730,\"caption\":\"\u00bfQu\u00e9 es JavaScript?\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tutoriales JavaScript\",\"item\":\"https:\/\/kinsta.com\/es\/secciones\/tutoriales-javascript\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/es\/#website\",\"url\":\"https:\/\/kinsta.com\/es\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluciones de alojamiento premium, r\u00e1pidas y seguras\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/es\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/es\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinsta.es\/\",\"https:\/\/x.com\/Kinsta_ES\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/7be3f509e7393507bdeb76947810fcd5\",\"name\":\"Nahla Davies\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/de7167e50927dbee1296fd97629d66bc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/de7167e50927dbee1296fd97629d66bc?s=96&d=mm&r=g\",\"caption\":\"Nahla Davies\"},\"url\":\"https:\/\/kinsta.com\/es\/blog\/author\/nahladavies\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web","description":"Aprende qu\u00e9 es JavaScript en detalle, sus principales caracter\u00edsticas, ventajas y c\u00f3mo se diferencia de Java. Tambi\u00e9n exploraremos JS con ejemplos de c\u00f3digo.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/","og_locale":"es_ES","og_type":"article","og_title":"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web","og_description":"Aprende qu\u00e9 es JavaScript en detalle, sus principales caracter\u00edsticas, ventajas y c\u00f3mo se diferencia de Java. Tambi\u00e9n exploraremos JS con ejemplos de c\u00f3digo.","og_url":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinsta.es\/","article_published_time":"2021-08-06T11:44:06+00:00","article_modified_time":"2025-10-01T19:33:56+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg","type":"image\/jpeg"}],"author":"Nahla Davies","twitter_card":"summary_large_image","twitter_description":"Aprende qu\u00e9 es JavaScript en detalle, sus principales caracter\u00edsticas, ventajas y c\u00f3mo se diferencia de Java. Tambi\u00e9n exploraremos JS con ejemplos de c\u00f3digo.","twitter_image":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg","twitter_creator":"@Kinsta_ES","twitter_site":"@Kinsta_ES","twitter_misc":{"Escrito por":"Nahla Davies","Tiempo de lectura":"16 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/"},"author":{"name":"Nahla Davies","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/7be3f509e7393507bdeb76947810fcd5"},"headline":"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web","datePublished":"2021-08-06T11:44:06+00:00","dateModified":"2025-10-01T19:33:56+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/"},"wordCount":3263,"publisher":{"@id":"https:\/\/kinsta.com\/es\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg","inLanguage":"es"},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/","url":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/","name":"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web","isPartOf":{"@id":"https:\/\/kinsta.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg","datePublished":"2021-08-06T11:44:06+00:00","dateModified":"2025-10-01T19:33:56+00:00","description":"Aprende qu\u00e9 es JavaScript en detalle, sus principales caracter\u00edsticas, ventajas y c\u00f3mo se diferencia de Java. Tambi\u00e9n exploraremos JS con ejemplos de c\u00f3digo.","breadcrumb":{"@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#primaryimage","url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg","contentUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2021\/08\/que-e-javascript.jpeg","width":1460,"height":730,"caption":"\u00bfQu\u00e9 es JavaScript?"},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/es\/blog\/que-es-javascript\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/es\/"},{"@type":"ListItem","position":2,"name":"Tutoriales JavaScript","item":"https:\/\/kinsta.com\/es\/secciones\/tutoriales-javascript\/"},{"@type":"ListItem","position":3,"name":"\u00bfQu\u00e9 Es el JavaScript? Un Repaso al Lenguaje de Programaci\u00f3n de Scripts M\u00e1s Popular de la Web"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/es\/#website","url":"https:\/\/kinsta.com\/es\/","name":"Kinsta\u00ae","description":"Soluciones de alojamiento premium, r\u00e1pidas y seguras","publisher":{"@id":"https:\/\/kinsta.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/es\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinsta.es\/","https:\/\/x.com\/Kinsta_ES","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/7be3f509e7393507bdeb76947810fcd5","name":"Nahla Davies","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/de7167e50927dbee1296fd97629d66bc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/de7167e50927dbee1296fd97629d66bc?s=96&d=mm&r=g","caption":"Nahla Davies"},"url":"https:\/\/kinsta.com\/es\/blog\/author\/nahladavies\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/42963","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/users\/178"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/comments?post=42963"}],"version-history":[{"count":16,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/42963\/revisions"}],"predecessor-version":[{"id":62770,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/42963\/revisions\/62770"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/42963\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/42963\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/42963\/translations\/pt"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/42963\/translations\/es"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/42963\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/42963\/translations\/de"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/42963\/translations\/nl"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/42963\/translations\/jp"},{"href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/42963\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/media\/42965"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/media?parent=42963"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/tags?post=42963"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/topic?post=42963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}