Unidad 4 - JS 2
Unidad 4 - JS 2
Unidad 4 - JS 2
Unidad 4:
Javascript (parte 2)
Presentación
En esta unidad vemos qué es el DOM, cómo manipularlo y responder a sus eventos
así como también los distintos métodos de manipulación de arrays y objetos en
Javascript.
Objetivos
Que los participantes logren…
Cuando una serie de instrucciones se repiten una y otra vez, se complica demasiado
el código fuente de la aplicación, ya que:
Las funciones son la solución a todos estos problemas, tanto en JavaScript como en
el resto de lenguajes de programación. Una función es un conjunto de
instrucciones que se agrupan para realizar una tarea concreta y que se pueden
reutilizar fácilmente.
En el siguiente ejemplo, las instrucciones que suman los dos números y muestran
un mensaje con el resultado se repiten una y otra vez:
Aunque es un ejemplo muy sencillo, parece evidente que repetir las mismas
instrucciones a lo largo de todo el código no es algo recomendable. La solución que
proponen las funciones consiste en extraer las instrucciones que se repiten y
sustituirlas por una instrucción del tipo "en este punto, se ejecutan las instrucciones
que se han extraído".
Por lo tanto, en primer lugar se debe crear la función básica con las instrucciones
comunes. Las funciones en JavaScript se definen mediante la palabra reservada
function, seguida del nombre de la función. Su definición formal es la siguiente:
function nombre_funcion() {
………
El nombre de la función se utiliza para llamar a esa función cuando sea necesario. El
concepto es el mismo que con las variables, a las que se les asigna un nombre
único para poder utilizarlas dentro del código.
Por último, las funciones también puede devolver un valor o resultado mediante el
uso de la palabra clave return. Dicho valor puede ser almacenado en una variable o
utilizado en alguna de las estructuras de control o bucles que vimos previamente.
2. DOM
El DOM es una de las APIs más usadas en la Web, pues permite ejecutar código en
el navegador para acceder e interactuar con cualquier nodo del documento. Estos
nodos pueden crearse, moverse o modificarse. Pueden añadirse a estos nodos
manejadores de eventos (event listeners en inglés) que se ejecutarán/activarán
cuando ocurra el evento indicado en este manejador.
Selectores de elementos
Los selectores api proveen métodos que hacen más fácil y rápido devolver
elementos del nodo Element del DOM mediante emparejamiento de un conjunto de
selectores. Esto es mucho más rápido que las técnicas anteriores, donde fuera
necesario, por ejemplo usar un loop en un código JavaScript para localizar el ítem
específico que quisieras encontrar.
document.querySelector()
Devuelve la primera coincidencia del (elemento) Element nodo dentro de las
subramas del nodo. Si no se encuentra un nodo coincidente, se devuelve null .
document.querySelectorAll()
Devuelve un listado de nodos NodeList conteniendo todos los elementos del nodo
coincidentes( Element) dentro de las subramas del nodo, o Devuelve un Listado de
Nodos vacío NodeList si no se encuentran coincidencias.
Estos métodos aceptan uno o más selectores separados por comas entre cada
selector para determinar qué elemento o elementos deben ser devueltos. por
ejemplo para seleccionar todos los elementos (p) del párrafo en un documento
donde la clase CSS sea tanto warning or note, podes hacer lo siguiente:
document.getElementById()
Este método permite seleccionar una elemento del DOM usando el atributo id del
mismo.
document.getElementsByClassName()
Este método devuelve un array o lista de elementos que contengan la clase que se
especifique como parámetro.
document.getElementsByTagName()
Este método devuelve un array o lista de elementos cuya etiqueta html sea la que
se especifique como parámetro.
Una vez creado el elemento, este no será visible al usuario hasta que lo
agreguemos explícitamente al DOM, para ello, los elementos o nodos del DOM
cuentan con un método llamado appendChild() que recibe como parámetro el
elemento que se desee agregar.
Eliminar elementos del DOM
Para eliminar elementos del DOM solo debemos obtener una referencia al elemento
usando cualquiera de los métodos de selección que mencionamos previamente, y
llamar a al método remove().
innerHTML e innerText
Las propiedades de los elementos del DOM innerHTML e innerText hacen referencia
al contenido de los nodos. Mientras que innerText permite insertar y manipular
contenido sencillo dentro de los nodos, innerHTML nos permite incluir código
HTML más complejo sin la necesidad de crear los elementos a mano.
EventTarget.addEventListener
Atributo HTML
Array.filter()
El método filter() crea un nuevo array con todos los elementos que cumplan la
condición implementada por la función dada.
Array.find()
El método find() devuelve el valor del primer elemento del array que cumple la
función de prueba proporcionada, de lo contrario devuelve undefined.
5. Interpolación de strings
Para hacer uso de esta nueva funcionalidad tenemos que rodear nuestros strings
con la tilde invertida (`) y las variables o expresiones que deseemos interpolar
deberán estar contenidas dentro de la estructura ${}.
6. JSON
Estructura básica
Arrays
Objetos
Operador spread
El operador spread (...) sirve para obtener todas las propiedades de un objeto o los
elementos de un array. Es de suma utilidad para cuando necesitamos hacer copias
de objetos o listas modificando alguno de los valores o agregando nuevos.
Arrays
Objetos
Bibliografía utilizada y sugerida