Manz 🇮🇨⚡👾 Profile picture
May 19, 2022 9 tweets 4 min read Read on X
💛¿Aún no entiendes las «Arrow function» de Javascript?

Desde hace tiempo, Javascript incorpora una forma compacta y cómoda de escribir funciones en Javascript, denominada arrow function, fat arrow o "funciones flecha".

¡Te las explico (y sus curiosidades)!
🧵🔽
1️⃣ Tradicionalmente, en Javascript, las funciones se escriben de la siguiente forma (y se puede seguir usando esta sintaxis).

Sin embargo, es habitual ver código donde creas functiones anónimas (sin nombre) y las guardas en una variable/constante.
2️⃣ Usando la notación "Función flecha" podemos escribir `=` seguido de `>` para hacer una versión «compacta» de las funciones de Javascript donde no tengamos que escribir `function`.

Algunas tipografías permiten ligaduras, y unen estos caracteres en uno solo visualmente.
3️⃣ Cuando usamos la notación de arrow function y la función solo tiene una instrucción en el cuerpo de la función, podemos omitir el `return` ya que está implícito.

Además, al ser sólo una instrucción, podemos también omitir las llaves.
4️⃣ A la hora de indicar los parámetros, observa que en el caso de tener un sólo parámetro, puedes omitir los paréntesis, algo que no puedes hacer en el resto de situaciones.

A veces esto es mucho más claro a la hora de escribir funciones en parámetros de otras funciones.
5️⃣ Pero quizás una de las cosas más interesantes de las arrow functions tiene que ver con el concepto `this`.

Cuando usamos una función tradicional, generamos un contexto, al que se puede hacer referencia con la palabra clave `this`.
Sin embargo, cuando usamos una función flecha, no existe ese concepto de `this`, por lo que si usamos `this` vamos a hacer referencia al `this` del padre (si existe).

Esto nos puede venir muy bien para simplificar código y evitar los `self = this` que se hacían antiguamente.
¿Te ha gustado? Pues echa un vistazo a la documentación que tenemos en LenguajeJS, sígueme en redes y comparte para ayudar a otros!

👉lenguajejs.com
👉twitch.tv/ManzDev
👉manz.dev

¡Hoy vamos a ver y hablar de Astro.build en Twitch!
Cuando intentas usar una librería sin leer la documentación...

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Manz 🇮🇨⚡👾

Manz 🇮🇨⚡👾 Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @Manz

Feb 23
☁ ¿Qué está pasando con Cloudflare, el fútbol y el #bloqueoterceros?

En esta infografía explico que es Cloudflare y como te está afectando el bloqueo de Internet en España.

✨ Cuando creamos un sitio web y comenzamos a recibir tráfico, también comenzamos a recibir accesos de bots y atacantes, no sólo de usuarios legítimos.

Sigue 👇Image
✨ Cloudflare es un servicio gratuito (que también tiene planes opcionales de pago) que permite actuar de escudo y ayudar a filtrar bots y atacantes de los usuarios legítimos, aligerando la carga de nuestra web, que estaba dando servicio también a los usuarios no legítimos.

También puede ayudar a evitar o paliar ataques DDoS.Image
Entre otros servicios, Cloudflare también ofrece CDN, una forma de mejorar el rendimiento de tu web, evitar que se sature en picos de muchos usuarios, reducir gastos y mejorar la experiencia de tus usuarios en diferentes zonas geográficas. Image
Read 9 tweets
Jun 30, 2023
📚ROADMAP FRONTEND 2023
🧠¿En qué debo enfocarme?

✨Ruta de aprendizaje recomendada
✨No tienes que profundizar, pero si conocer bases
✨Especialízate cuando encuentres lo que te interesa
✨Es subjetiva (es mi opinión)

La explico en siguientes tweets👇
Si estás empezando, enfócate en aprender las bases:

✨ HTML/CSS
✨ Frameworks CSS: Bootstrap / Tailwind CSS
✨ Puedes usar para practicar

Aquí te enfocas en ver detalles visuales, apariencia para construir una página. https://t.co/UwA38SOg12Codepen.io
Por aquí tienes una tabla periódica de HTML para profundizar en las etiquetas HTML que existen.

Pulsando sobre cada uno de los elementos HTML, tienes más información sobre ellos, ejemplos, etc:

🧪Tabla periódica de HTML:
https://t.co/saFDMH9KjTlenguajehtml.com/html/introducc…
Read 12 tweets
Jun 25, 2023
📘En 2023... ¡La forma de escribir CSS está CAMBIANDO! ¡Y mucho!

✨Se avecinan muchos cambios (y muy potentes)
✨Mejor soporte en navegadores
✨Escribimos menos código para hacer más cosas
✨¡Nativo! Sin preprocesadores, librerías o similar

🧵¡Te las voy explicando!👇
➡ Combinador `:is()`

La clásica agrupación de selectores, ahora puedes hacerla con el combinador lógico `:is()`, que permite incluso hacer combinaciones de múltiples selectores

✨Más expresivo
✨Más fácil de leer
🧨Puedes usar `:where()` para ser menos específico
➡ Colores RGB

La nueva sintaxis de escribir colores RGB en CSS.

✨Valores porcentuales en vez de 0...255
✨Separado por espacios, sin necesidad de comas
✨Canal alfa separado por slash `/`
🧨Transparencia o no... ¡No hace falta `rgba()`!
Read 9 tweets
Jun 13, 2023
📘¡Corrige tu código CSS automágicamente!

✨Corrige al guardar en VSCode con CTRL+S
✨Reorganiza propiedades por género o categoría
✨Revisa y corrige erratas o valores incorrectos
✨Adapta a formato adecuado en líneas largas
✨Fusiona en propiedades de atajo si es posible

🔽
Para activarlo en un proyecto, simplemente escribimos en una terminal:

1️⃣ `npm install -D stylelint stylelint-config-manzdev`

2️⃣ Luego, creamos un fichero `.stylelintrc.json` y añadimos lo siguiente:

PS: Dentro de `rules` podemos añadir nuestras propias reglas personalizadas. {   extends: "stylelin...
3️⃣ Si queremos que VSCode corrija sólo, instalamos esta extensión:
marketplace.visualstudio.com/items?itemName…

Y añadimos esta configuración en `.vscode/settings.json` o en `F1` / `Settings JSON`:

✨Desactiva linters básicos
✨Activa Stylelint como linter por defecto al guardar {   "css.validate"...
Read 4 tweets
Jun 11, 2023
🆕Animaciones CSS con «Motion Paths»

Mediante CSS podemos crear trayectos y animarlos de forma muy rápida y sencilla.

✨Trayectos con la función `ray()`
✨Trayectos SVG con la función `path()`
✨Trayectos desde un .svg con la función `url()`

¡Te explico como funcionan!
🔽 <div class="container&...
Con este sencillo código (no te olvides del tamaño de alto del contenedor), obtenemos este resultado. ¿Qué es lo que ha ocurrido?

✨Hemos creado 3 trayectos
✨Los hemos animado para ir de inicio a fin
✨La magia está en la función `ray()` aunque se pueden usar otras
Por ejemplo, podemos crear trayectos con la función `path()` creando paths SVG para animar elementos y moverlos a través del trayecto (rectas, curvas, etc...)

✨Desde ficheros SVG ya creados
✨Desde trayectos SVG indicados desde CSS
✨Crea el path en yqnn.github.io/svg-path-edito…
Read 4 tweets
Jun 11, 2023
📙¿La etiqueta HTML más infravalorada?

La etiqueta `<datalist>` nos permite ampliar y potenciar con datos otras etiquetas de formulario.

✨Por ejemplo, podemos convertir un <input> de texto en un híbrido con <select>, abierto a nuevas opciones, con filtro de autocompletado:

🧵 <input type="text"...
✨Utilizada junto a un <input> de fechas, podemos predefinir varias fechas como si fuera un <select>, y dar la opción de escoger "Otras..." para mostrar el selector de fechas tradicional. <input type="date"...
✨ Utilizada junto a un <input> de colores, podemos predefinir colores específicos, de modo que el usuario pueda escoger el color concreto, o mostrar el color picker del sistema. <input type="color&quo...
Read 5 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(