<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://mexpedia.org/index.php?action=history&amp;feed=atom&amp;title=JSX_%28JavaScript%29</id>
	<title>JSX (JavaScript) - Historial de revisiones</title>
	<link rel="self" type="application/atom+xml" href="https://mexpedia.org/index.php?action=history&amp;feed=atom&amp;title=JSX_%28JavaScript%29"/>
	<link rel="alternate" type="text/html" href="https://mexpedia.org/index.php?title=JSX_(JavaScript)&amp;action=history"/>
	<updated>2026-10-12T01:41:45Z</updated>
	<subtitle>Historial de revisiones de esta página en la wiki</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://mexpedia.org/index.php?title=JSX_(JavaScript)&amp;diff=4551723&amp;oldid=prev</id>
		<title>imported&gt;InternetArchiveBot: Añadiendo 4 libros para verificabilidad (20250210)) #IABot (v2.0.9.5) (GreenC bot</title>
		<link rel="alternate" type="text/html" href="https://mexpedia.org/index.php?title=JSX_(JavaScript)&amp;diff=4551723&amp;oldid=prev"/>
		<updated>2025-02-13T06:34:58Z</updated>

		<summary type="html">&lt;p&gt;Añadiendo 4 libros para &lt;a href=&quot;https://en.wikipedia.org/wiki/Verificabilidad&quot; class=&quot;extiw&quot; title=&quot;wikipedia:Verificabilidad&quot;&gt;verificabilidad&lt;/a&gt; (20250210)) #IABot (v2.0.9.5) (&lt;a href=&quot;/index.php?title=Usuario:GreenC_bot&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Usuario:GreenC bot (la página no existe)&quot;&gt;GreenC bot&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;JSX (JavaScript XML)&amp;#039;&amp;#039;&amp;#039;, formalmente &amp;#039;&amp;#039;&amp;#039;JavaScript Syntax eXtension&amp;#039;&amp;#039;&amp;#039;, es una extensión de [[JavaScript]] que permite la creación de árboles [[Document Object Model|DOM]] usando una sintaxis similar a [[XML]].&amp;lt;ref name=&amp;quot;:0&amp;quot;&amp;gt;{{Cita web|título=Draft: JSX Specification|url=https://facebook.github.io/jsx/|obra=JSX|editorial=Facebook|fechaacceso=2018-04-07}}&amp;lt;/ref&amp;gt; Inicialmente creado por [[Facebook]] para ser usado con [[React]], JSX ha sido utilizado por muchos otros frameworks web.&amp;lt;ref name=Larsen&amp;gt;{{cita libro |apellido=Larsen|nombre=John|título=React Hooks in Action With Suspense and Concurrent Mode| año= 2021|editorial= Manning |isbn= 978-1720043997}}&amp;lt;/ref&amp;gt;{{rp|5}}&amp;lt;ref name=Wieruch&amp;gt;{{cita libro |apellido=Wieruch|nombre=Robin|título=The Road to React |fecha=2018-09-14|url=https://archive.org/details/roadtoreactyourj0000robi|editorial= Leanpub|isbn= 978-1720043997}}&amp;lt;/ref&amp;gt;{{rp|11}}  Generalmente, JSX es transpilado a llamadas a funciones de JavaScript anidadas con una estructura similar a la del JSX original.&lt;br /&gt;
&lt;br /&gt;
== Marcado ==&lt;br /&gt;
Un ejemplo de código JSX:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
const App = () =&amp;gt; {&lt;br /&gt;
   return (&lt;br /&gt;
     &amp;lt;div&amp;gt;&lt;br /&gt;
       &amp;lt;p&amp;gt;Encabezado&amp;lt;/p&amp;gt;&lt;br /&gt;
       &amp;lt;p&amp;gt;Contenido&amp;lt;/p&amp;gt;&lt;br /&gt;
       &amp;lt;p&amp;gt;Pie&amp;lt;/p&amp;gt;&lt;br /&gt;
     &amp;lt;/div&amp;gt;&lt;br /&gt;
   ); &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Elementos anidados===&lt;br /&gt;
Si se tienen muchos elementos en un mismo nivel, se deben envolver en un solo elemento React, como en el ejemplo anterior, donde se usó&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;div&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; para ello, o un fragmento de React, sea &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;Fragment&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;, or en su forma abreviada &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;, o como un array.&amp;lt;ref&amp;gt;{{cita web |url=https://reactjs.org/blog/2017/09/26/react-v16.0.html#new-render-return-types-fragments-and-strings |título=React v16.0§New render return types: fragments and strings |apellido=Clark |nombre=Andrew |fecha=26 de septiembre de 2017 |obra=React Blog}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{cita web |url=https://reactjs.org/docs/react-component.html#render |título=React.Component: render |obra=React}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=Wieruch&amp;gt;{{cita libro |apellido=Wieruch|nombre=Robin|título=The Road to React |fecha=2018-09-14|url=https://archive.org/details/roadtoreactyourj0000robi|editorial= Leanpub|isbn= 978-1720043997}}&amp;lt;/ref&amp;gt;{{rp|68-69}}&lt;br /&gt;
&lt;br /&gt;
===Atributos===&lt;br /&gt;
JSX provee una variedad de atributos de elemento diseñados para representar los que ya trae HTML, y además, se pueden usar atributos propios en el componente.&amp;lt;ref&amp;gt;{{cita web |url=https://reactjs.org/blog/2017/09/26/react-v16.0.html#support-for-custom-dom-attributes |título=React v16.0§Support for custom DOM attributes |apellido=Clark |nombre=Andrew |fecha=26 de septiembre de 2017 |obra=React Blog}}&amp;lt;/ref&amp;gt; Todos los atributos serán recibidos por el componente como propiedades.&lt;br /&gt;
&lt;br /&gt;
===Expresiones JavaScript ===&lt;br /&gt;
Las expresiones de JavaScript (pero no las sentencias) pueden ser usadas dentro de JSX colocándolas dentro de llaves:&amp;lt;ref name=Wieruch&amp;gt;{{cita libro |apellido=Wieruch|nombre=Robin|título=The Road to React |fecha=2018-09-14|url=https://archive.org/details/roadtoreactyourj0000robi|editorial= Leanpub|isbn= 978-1720043997}}&amp;lt;/ref&amp;gt;{{rp|14-16}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;h1&amp;gt;{10+1}&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El ejemplo anterior se renderizará como:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;h1&amp;gt;11&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Expresiones condicionales===&lt;br /&gt;
La sentencias Sí-Entonces no pueden ser usadas dentro de JSX, pero sí expresiones condicionales. El ejemplo siguiente renderizará &amp;lt;syntaxhighlight lang=&amp;quot;jsx&amp;quot; inline&amp;gt;{ i === 1 ? &amp;#039;true&amp;#039; : &amp;#039;false&amp;#039; }&amp;lt;/syntaxhighlight&amp;gt; como la cadena &amp;lt;code&amp;gt;&amp;#039;true&amp;#039;&amp;lt;/code&amp;gt;, porque &amp;lt;var&amp;gt;i&amp;lt;/var&amp;gt; es igual a 1.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;jsx&amp;quot;&amp;gt;&lt;br /&gt;
const App = () =&amp;gt; {&lt;br /&gt;
   const i = 1;&lt;br /&gt;
&lt;br /&gt;
   return (&lt;br /&gt;
     &amp;lt;div&amp;gt;&lt;br /&gt;
       &amp;lt;h1&amp;gt;{ i === 1 ? &amp;#039;true&amp;#039; : &amp;#039;false&amp;#039; }&amp;lt;/h1&amp;gt;&lt;br /&gt;
     &amp;lt;/div&amp;gt;&lt;br /&gt;
   );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Lo anterior será renderizado así:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
  &amp;lt;h1&amp;gt;true&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Las funciones y JSX pueden ser usados en condicionales:&amp;lt;ref name=Wieruch&amp;gt;{{cita libro |apellido=Wieruch|nombre=Robin|título=The Road to React |fecha=2018-09-14|url=https://archive.org/details/roadtoreactyourj0000robi|editorial= Leanpub|isbn= 978-1720043997}}&amp;lt;/ref&amp;gt;{{rp|88-90}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;jsx&amp;quot;&amp;gt;&lt;br /&gt;
const App = () =&amp;gt; {&lt;br /&gt;
   const sections = [1, 2, 3];&lt;br /&gt;
&lt;br /&gt;
   return (&lt;br /&gt;
     &amp;lt;div&amp;gt;&lt;br /&gt;
       {sections.map((n,i) =&amp;gt; (&lt;br /&gt;
           /* &amp;#039;key&amp;#039; es usada por React para mantener una lista de elementos y sus cambios */&lt;br /&gt;
           /* Cada &amp;#039;key&amp;#039; debe ser única */&lt;br /&gt;
           &amp;lt;div key={&amp;quot;section-&amp;quot; + n}&amp;gt;&lt;br /&gt;
               Sección {n} {i === 0 &amp;amp;&amp;amp; &amp;lt;span&amp;gt;(primera)&amp;lt;/span&amp;gt;}&lt;br /&gt;
           &amp;lt;/div&amp;gt;&lt;br /&gt;
       ))}&lt;br /&gt;
     &amp;lt;/div&amp;gt;&lt;br /&gt;
   );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Lo anterior se renderizará como:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
  &amp;lt;div&amp;gt;Sección 1&amp;lt;span&amp;gt;(primero)&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div&amp;gt;Sección 2&amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div&amp;gt;Sección 3&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código escrito en JSX requiere herramientas de conversión como [[Babel (compilador)|Babel]] antes de que pueda ser entendido por los navegadores web.&amp;lt;ref&amp;gt;{{Cita libro|url=https://books.google.com/books?id=Tg9QDwAAQBAJ|título=React for Real: Front-End Code, Untangled|apellido=Fischer|nombre=Ludovico|fecha=6 de septiembre de 2017|editorial=Pragmatic Bookshelf|isbn=9781680504484|idioma=en}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=Larsen2021&amp;gt;{{cita libro |apellido=Larsen|nombre=John|título=React Hooks in Action With Suspense and Concurrent Mode| año= 2021|editorial= Manning |isbn= 978-1720043997}}&amp;lt;/ref&amp;gt;{{rp|5}} Esta conversión generalmente se realiza durante la fase de compilación, antes de que sea desplegado.&lt;br /&gt;
&lt;br /&gt;
== Referencias ==&lt;br /&gt;
{{listaref}}&lt;br /&gt;
&lt;br /&gt;
{{Control de autoridades}}&lt;br /&gt;
[[Categoría:JavaScript]]&lt;/div&gt;</summary>
		<author><name>imported&gt;InternetArchiveBot</name></author>
	</entry>
</feed>