Java Script
Java Script
JAVASCRIPT
Contenido
1 UNIDAD I ..................................................................................................................................... 3
1.1 ¿Qué es JavaScript? ............................................................................................................. 4
1.1.1 Definición General ....................................................................................................... 4
1.2 Versiones de JavaScript ....................................................................................................... 4
1.3 Formas de incluir el código JavaScript ................................................................................ 5
1.3.1 JavaScript "en la página" ............................................................................................. 5
1.3.2 JavaScript externo ....................................................................................................... 6
1.3.3 Posición del elemento <script> ................................................................................... 6
1.4 ¿Qué es un script? ............................................................................................................... 6
1.5 Las sentencias...................................................................................................................... 7
1.5.1 Sentencias y declaraciones por categoría ................................................................... 7
1.5.2 Declaraciones .............................................................................................................. 8
1.5.3 Funciones..................................................................................................................... 8
1.5.4 Iteraciones ................................................................................................................... 8
1.5.5 Otros ............................................................................................................................ 9
1.6 Palabras reservadas........................................................................................................... 10
1.6.1 Reserved keywords as of ECMAScript 6 ................................................................. 10
1.6.2 Futuras Palabras Reservadas en estandares antiguos .............................................. 11
1.7 Comentarios ...................................................................................................................... 11
1.7.1 Comentarios de fin de línea. ..................................................................................... 11
1.7.2 Comentarios multilínea. ............................................................................................ 12
1.8 Hola Mundo ....................................................................................................................... 13
2 UNIDAD II .................................................................................................................................. 13
2.1 Las variables. ..................................................................................................................... 14
2.1.1 Tipos de variables ...................................................................................................... 15
2.2 Tipos .................................................................................................................................. 16
2.2.1 number ...................................................................................................................... 16
2.2.2 boolean...................................................................................................................... 16
2.2.3 string.......................................................................................................................... 16
2.2.4 undefined .................................................................................................................. 17
2.3 El alcance de las variables ................................................................................................. 17
2.4 Operadores........................................................................................................................ 17
2.4.1 Operadores aritméticos ............................................................................................ 17
2.4.2 Incremento o decremento: ....................................................................................... 18
2.4.3 Asignación ................................................................................................................. 19
2.4.4 Operador typeof ........................................................................................................ 19
2.4.5 Operadores booleanos .............................................................................................. 19
2.4.6 Identidad o Igualdad ................................................................................................. 20
2.4.7 Comparación ............................................................................................................. 21
2.4.8 Operadores lógicos.................................................................................................... 22
3 UNIDAD III ................................................................................................................................. 23
3.1 Condicionales .................................................................................................................... 24
3.1.1 Asignación condicional .............................................................................................. 25
3.1.2 Sentencia IF ............................................................................................................... 25
3.1.3 Sentencia Switch ....................................................................................................... 26
3.2 Bucles ................................................................................................................................ 27
3.2.1 Bucle while ................................................................................................................ 27
3.2.2 Bucle Do/While ......................................................................................................... 27
3.2.3 Bucle For .................................................................................................................... 28
4 UNIDAD IV ................................................................................................................................. 29
4.1 Function............................................................................................................................. 30
4.2 Parámetros por defecto .................................................................................................... 30
4.3 Ámbito de una función. ..................................................................................................... 31
5 UNIDAD V .................................................................................................................................. 32
5.1 Number ............................................................................................................................. 33
5.1.1 Funciones de Number ............................................................................................... 33
5.2 Módulo Math .................................................................................................................... 35
5.3 Array .................................................................................................................................. 35
5.4 Object ................................................................................................................................ 36
5.4.1 Anidación ................................................................................................................... 37
5.4.2 Igualdad entre objetos .............................................................................................. 38
1 UNIDAD I
Introducción a JavaScript
1.1 ¿Qué es JavaScript?
JavaScript es un lenguaje de los denominados lenguajes de scripting. Los scripts (script se traduce
como guion, literalmente) son archivos de órdenes, programas por lo general simples. Es por esto
que no podemos definir JavaScript como un lenguaje de programación en un sentido estricto, pero
sin embargo sí nos permite crear páginas dinámicas, con algunos efectos realmente interesantes y
que mejoren considerablemente su aspecto. Nos permite tener cierta interacción con el usuario
de nuestras páginas, reconocer determinados eventos que se puedan producir y responder a éstos
adecuadamente.
Tratándose de un lenguaje de script, los programas que realicemos, no necesitarán ser compilado.
Los lenguajes de scripting son lenguajes interpretados. Esto en la práctica significa que cuando
trabajemos con JavaScript escribiremos nuestro programa y podremos ejecutarlo de forma
directa, sin necesidad de hacer nada más.
Código: HTML
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo de código JavaScript en el propio documento</title>
<script type=”text/javascript”>
alert(“Esto es mensaje de prueba”);
</script>
</head>
<body>
<p>Y esto un párrafo de texto.</p>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title> Ejemplo de código JavaScript en el propio documento </title>
</head>
<body>
<script>
alert('¡Hola Mundo!');
</script>
</body>
</html>
1.3.2 JavaScript externo
Es posible, y conveniente escribir el código JavaScript en un archivo externo con la extensión.
Js. Este archivo se llama desde la página web mediante el elemento <script> y su atributo src
que contiene la dirección URL del archivo. js.
podemos distinguir dos tipos: aquellos que se interpretan del lado del servidor (como es el caso
del PHP) y aquellos que lo son del lado del cliente, como es JavaScript. Para identificar este
segundo tipo, los scripts se preceden de la etiqueta <script>.
Sin embargo, los scripts no son exclusivos de los lenguajes para web, ni siquiera son especialmente
novedosos, ya en el entorno DOS existían los denominados archivos por lotes o batch. Windows
reconoce, además de JavaScript, otros lenguajes de scripts.
Block
Un bloque de sentencias se utiliza para agrupar cero o mas sentencias. El bloque se delimita por
un par de llaves.
break
Finaliza la sentencia actual loop, switch, o label y transfiere el control del programa a la siguiente
sentencia de la sentencia finalizada.
continue
Finaliza la ejecucion de las sentencias dentro de la iteracion actual del actual bucle, y continua la
ejecucion del bucle con la siguiente iteracion.
Empty
Una sentencia vacía se utiliza para proveer una "no sentencia", aunque la sintaxis de JavaScript
esperaba una.
if...else
Ejecuta una sentencia si una condición especificada es true. Si la condición es false, otra sentencia
puede ser ejecutada.
switch
Evalua una expresión, igualando el valor de la expresión a una clausula case y ejecuta las
sentencias asociadas con dicho case.
throw
try...catch
Marca un bloque de sentencias para ser probadas (try) y especifica una respuesta, en caso de que
se lance una excepción.
1.5.2 Declaraciones
let Declara una variable local de ambito de bloque, opcionalmente inicializándola a un valor.
1.5.3 Funciones
function
function*
Los generadores de funciones permiten escribir iteradores con mas facilidad.
async function
return
Especifica el valor a ser retornado por una función.
class
Declara una clase.
1.5.4 Iteraciones
do...while
Crea un bucle que ejecuta una instrucción especificada hasta que la condición de prueba se
evalúa como falsa. La condición se evalúa después de ejecutar la instrucción, lo que da
como resultado que la instrucción especificada se ejecute al menos una vez.
for
Creates a loop that consists of three optional expressions, enclosed in parentheses and
separated by semicolons, followed by a statement executed in the loop.
for each...in
Itera una variable especificada sobre todos los valores de las propiedades del objeto. Para
cada propiedad distinta, se ejecuta una instrucción especificada.
for...in
Itera sobre las propiedades enumerables de un objeto, en orden albitrario. Para cada
propiedad distinta, las instrucciones pueden ser ejecutadas.
for...of
Iterates over iterable objects (including array, array-like objects, iterators and generators),
invoking a custom iteration hook with statements to be executed for the value of each
distinct property.
while
Crea un bucle que ejecuta la instrucción especificada siempre que la condición de prueba se
evalúe como verdadera. La condición se evalúa antes de ejecutar la instrucción.
1.5.5 Otros
debugger
export
Usada para permitir a un script firmada proveer propiedades, funciones y objetos a otros
scripts firmada o sin firmar. Esta antigua funcionalidad de Netscape ha sido removida y será
redefinida por los modulos de ECMAScript 6
import
Usada para permitir a un escript importar propiedades, funciones y objetos desde otro
script firmado que ha exportado su información. Esta antigua funcionalidad de Netscape ha
sido removida y será redefinida por los modulos de ECMAScript 6.
label
Provee una instrucción con un identificador que puedes referir usando una
instrucción break o continue .
with
• break
• case
• class
• catch
• const
• continue
• debugger
• default
• delete
• do
• else
• export
• extends
• finally
• for
• function
• if
• import
• in
• instanceof
• let
• new
• return
• super
• switch
• this
• throw
• try
• typeof
• var
• void
• while
• with
• yield
Las siguientes estan reservadas como palabras futuras por la especificación ECMAScript:
• enum
•
Las siguientes estan reservadas como palabras futuras cuando se encuentre el modo correcto para
su estructura de codigo:
• implements
• package
• protected
• static
• interface
• private
• public
• abstract
• boolean
• byte
• char
• double
• final
• float
• goto
• int
• long
• native
• short
• synchronized
• transient
• volatile
Adicionalmente, los literales "null", "true", y "false" estan reservadas en ECMAScript para usos
normales.
1.7 Comentarios
Los comentarios son anotaciones realizadas por el desarrollador para explicar el funcionamiento
de un script, una instrucción o incluso un grupo de instrucciones. Los comentarios no interfieren
con la ejecución de un script.
Código: JavaScript
sentencia_1 / / Esta es mi primera instrucción
sentencia_2;
/ / La tercera declaración es la siguiente:
sentencia_3;
El texto colocado en un comentario se ignora cuándo se ejecuta un script, lo que significa que
puedes poner un comentario, incluso en una instrucción (que, obviamente, no se ejecutará).
Código: JavaScript
Código: JavaScript
/ * Este script consta de tres pasos:
- Instrucción uno está haciendo algo
- Instrucción dos para otra cosa
- Instrucción tres que pone fin a la secuencia de comandos
*/
sentencia_1;
sentencia_2;
sentencia_3 / / Fin del script
Ten en cuenta que un comentario de varias líneas se puede mostrar en una sola línea.
Código: JavaScript
2 UNIDAD II
Elementos de Programación
Básica
2.1 Las variables.
En programación entendemos por variable un espacio que se reservará en memoria y que será
utilizado para guardar un dato. El valor de ese dato puede variar a lo largo de la ejecución de
nuestro programa, puede ser que necesitemos realizar con él distintas operaciones. Es similar al
concepto matemático de variable, aunque si bien algunas de las operaciones que podemos realizar
con una variable de programación serían matemáticamente inadmisibles. En contraposición, un
valor que no cambia a lo largo de la ejecución de nuestro programa, lo llamaremos constante. En
JavaScript no hay una manera especial de declararlas respecto a las variables, e igualmente se
reserva espacio para ellas.
Como decíamos, una variable es un espacio reservado para guardar un valor, y a ese espacio le
asignamos un nombre.
Se trata de una cuestión práctica, pues siempre resultará más fácil recordar el nombre
precioVenta que la dirección de memoria 34D0 en hexadecimal (y no digamos ya
0011010011010000 en binario). La cosa se complica además si tenemos en cuenta que es
frecuente que un mismo programa utilice cientos de variables.
Nosotros mismos podemos elegir qué nombres dar a nuestras variables. Sin embargo, es
aconsejable que usemos nombres significativos, que nos hagan intuir con facilidad qué datos
guardamos en ella. Por ejemplo, será mucho más fácil entender a primera vista qué contiene la
variable iva8, que la variable llamada solamente con la letra a. El nombre de una variable se puede
llamar también identificador.
En cuanto a restricciones al nombre que elijamos debemos tener en cuenta que JavaScript impone
las siguientes:
• No llevan tildes.
• No podemos usar las palabras reservadas para nombrar una variable.
Definición
Las variables son espacios de memoria donde almacenamos temporalmente datos desde los que
podemos acceder en cualquier momento de la ejecución de nuestros programas. Tienen varios
tipos y clases.
Para definir una variable en JavaScript, utilizamos la palabra reservada var y le damos un nombre,
por ejemplo:
También le podemos asignar un valor en la misma línea que la declaramos, por ejemplo, a
continuación, a la variable dato le asignamos el valor 5.
O podemos primero declarar la variable y más adelante, en otra línea, asignarle un valor.
2.2 Tipos
JavaScript tiene 4 tipos primitivos de datos para almacenar en variables. Estos son:
• number
• boolean
• string
• undefined
2.2.1 number
Sirve para almacenar valores numéricos. Son utilizados para contar, hacer cálculos y
comparaciones. Estos son algunos ejemplos.
2.2.2 boolean
Este tipo de dato almacena un bit que indica true o false. Los valores booleanos se utilizan para
indicar estados. Por ejemplo, asignamos a una variable el estado false al inicio de una operación, y
al finalizarla lo cambiamos a true. Después realizamos la comprobación necesaria.
2.2.3 string
Las variables de tipo string almacenan caracteres o palabras. Se delimitan entre comillas simples o
dobles. Ejemplo:
2.2.4 undefined
Este tipo se utiliza cuando el valor de una variable no ha sido definido aún o no existe.
Por ejemplo:
Otro tipo de almacenamiento de datos que tiene JavaScript son los Objetos. En JavaScript todo es
un objeto, hasta las funciones. Todo hereda de la clase Object. Se pueden definir como una
estructura donde se agregan valores. Dentro de las clases que heredan de Object tenemos Array ,
Date , etc...
Globales: Cuando una variable es declarada en una página, será legible para toda esa página, pero
no para otras.
Locales: Son variables declaradas en ámbitos más pequeños, como por ejemplo una función (que
más adelante veremos). El contenido o valor de esta variable sólo es accesible dentro de ese
pequeño entorno en el cual fue declarada.
Más adelante, cuando veamos las funciones creadas por el programador veremos cómo influye el
lugar y el modo en que se declara una variable en cómo es considerada, si local o global.
2.4 Operadores
2.4.1 Operadores aritméticos
JavaScript posee operadores para tipos y objetos. Estos operadores permiten formar expresiones.
Las más comunes son las operaciones aritméticas.
Son muy sencillos y los habituales en los lenguajes de programación y en operaciones normales.
Quizás el menos habituales el resto de la división entera, se trata de eso literalmente. En el
ejemplo puesto, si hacemos la división sin decimales, en el resto nos aparecería 2, pues a ese 2 es
al que se refiere el resultado.
Como vemos suma o resta una unidad al valor. Suele ser frecuente su uso en contadores que
deban incrementarse o decrementarse en una unidad. Tienen una peculiaridad que vamos a
explicar con un ejemplo:
Es decir, la variable b valdrá 2. La operación de incrementar en uno se lleva a cabo antes que la
operación de la asignación.
Al igual que antes la variable a vale 1. La variable b, sin embargo, vale también 1. La razón es que
el incremento es posterior a la asignación. Es decir, a b se le asigna primero el valor de a y
posteriormente el valor de a se incrementa en una unidad.
De igual forma funciona el operador de decremento, según lo coloquemos antes o después del
valor.
2.4.3 Asignación
Además del que habitualmente tienen todos los lenguajes de asignación, es decir el igual (a=7, por
ejemplo), JavaScript permite combinarlo con otros operadores aritméticos de las formas
siguientes:
Esto es muy útil para conocer en un momento dado que tipo estamos utilizando y prevenir errores
en el desarrollo.
Negación Este operador convierte un valor booleando en su opuesto. Se representa con el signo ! .
Si se utiliza dos veces, nos devuelve el valor original.
2.4.6 Identidad o Igualdad
El operador de igualdad (o igualdad débil), se representa con == y el de identidad (o igualdad
estricta), con ===. Se recomienda el uso del operador de identidad (los 3 iguales) frente al de
igualdad débil, ya que el coste de procesamiento de éste último es mucho mayor y sus resultados
en ocasiones son impredecibles. Es una de las partes malas de JavaScript, pero si se tiene cuidado
no tiene por qué darnos ningún problema.
El problema es que estas conversiones no son siempre muy evidentes y nos pueden desconcertar.
Por ejemplo, las siguientes expresiones son todas verdaderas, aunque pueda parecer que no
debería ser así:
Seguramente algo como 1 == true podemos aceptarlo, ya que ambos son valores que se suelen
denominar como truthy (que se consideran como vedaderas), y las usamos muy habitualmente,
por ejemplo, dentro de instrucciones if (). Aunque no nos estemos dando cuenta, cuando
consideramos que 1 es verdadero y 0 es falso en un if (), estamos aprovechando una conversión
implícita de tipo.
Seguramente nos sintamos más confundidos a la hora de comparar cadenas y números, ya que 1
== "1" no parece que deba ser verdadero, pero esta conversión de tipos es más o menos
previsible.
Lo que es muy difícil de comprender es que algo como [[]] sea igual a 0 o ',,,' sea igual que new
Array(4). Estos caprichos de la conversión de tipos en Javascript ha dado problemas graves en más
de un programa en producción.
En muchos casos los analizadores de código dan un aviso o un error cuando encuentran un ==
advirtiendo que quizás hemos querido poner === y por un descuido nos hemos saltado un signo de
igual. Pero en ocasiones utilizar la conversión de tipo puede ser útil y es algo conveniente, pero es
cierto que un pequeño descuido puede hacer cambiar sustancialmente el comportamiento de
nuestro programa.
En general se considera que la comparación estricta con === o !== es más conveniente y segura.
Este tipo de comparación no realiza ningún tipo de conversión de tipo y nos asegura que coinciden
tanto el valor como el tipo de los dos elementos que estamos comparando. Si que comparamos
datos de tipos diferentes, siempre se producirá un resultado negativo. En ocasiones se dice que
este tipo de comparaciones comprueba tipo y valor, aunque realmente lo que hace es no realizar
ningún tipo de conversión.
2.4.7 Comparación
Podemos comparar si dos valores son menores, mayores o iguales con los operadores de
comparación representados por los símbolos < , > , <= y >= . El resultado de la comparación nos
devuelve true o false dependiendo de si es correcto o no.
Es muy utilizado para devolver valores sin que estos sean modificados, por ejemplo, para
comprobar si una propiedad existe, etc. La lógica que sigue es: Si el primer valor es false devuelve
ese valor, si no, devuelve el segundo:
En el ejemplo comparamos 0 y true, como 0 es un valor que retorna false, nos devuelve ese valor.
En el segundo ejemplo 1 es un valor que retorna true, por lo que nos devolverá el segundo "Hola".
Hay ciertos valores en JavaScript que son evaluados como false y son: el número 0, un string vacío
"", el valor null, el valor undefined y NaN.
“NaN” es el acrónimo para “Not a Number” y obtenemos este error cuando estamos tratando de
hacer un cast hacia Number de un tipo de dato que no es numérico, por lo que se lanza la
excepción “NaN”.
2.4.8.2 Operador OR
Es otro operador lógico que funciona a la inversa que AND. Devuelve false si los valores
comparados son false. En el caso de que un valor sea true devolverá true. Se representa con el
símbolo ||.
También es muy utilizado para asignar valores por defecto en nuestras funciones. La lógica que
sigue es: Si el primer valor es true, devuelve ese valor. Por ejemplo:
En este ejemplo, la variable port contendrá el valor de process.env.PORT siempre que esa variable
esté definida, si no su valor será 5000.
3 UNIDAD III
Estructuras de Control
3.1 Condicionales
Los condicionales son expresiones que nos permiten ejecutar una secuencia de instrucciones u
otra diferente dependiendo de lo que estemos comprobando. Permiten establecer el flujo de
ejecución de los programas de acuerdo a determinados estados.
3.1.1 Asignación condicional
Este tipo de asignación es también conocido como el If simplificado u operador ternario. un tipo
de condicional que veremos más adelante. Sirve para asignar en una sola línea un valor
determinado si la condición que se evalúa es true u otro si es false. La sintaxis es la siguiente:
3.1.2 Sentencia IF
Como hemos visto antes, dependiendo del resultado de una condición, obtenemos un valor u
otro. Si el resultado de la condición requiere más pasos, en lugar de utilizar la asignación
condicional, es mejor emplear la sentencia if. Tenemos 3 formas de aplicarlo:
3.1.2.1 if simple
Si se cumple la condición dentro del paréntesis, se ejecuta el bloque de código incluido entre las
llaves { ... }.
3.1.2.2 if/else
Con este tipo de sentencia, si se cumple la condición pasa como el anterior modelo, se ejecuta el
bloque de código 1, y si la condición a evaluar no se cumple, se ejecuta el bloque de código 2.
3.1.2.3 if/else if
Y por último si queremos realizar varias comprobaciones, podemos concatenar varias sentencias
if, else if, etc.. y se irán comprobando en orden:
Existen 3 elementos que controlan el flujo del bucle. La inicialización que fija los valores con los
que iniciamos el bucle. La condición de permanencia en el bucle y la actualización de las variables
de control al ejecutarse la iteración.
Si queremos mostrar por consola los números del 1 al 10, con un bucle while sería así.
Los elementos de control se definen entre los paréntesis (...) y se separan por punto y coma ; . Los
bucles anteriores en formato for serían así:
4 UNIDAD IV
Funciones
4.1 Function
Las funciones en JavaScript son bloques de código ejecutable, a los que podemos pasar
parámetros y operar con ellos. Nos sirven para modular nuestros programas y estructurarlos en
bloques que realicen una tarea concreta. De esta manera nuestro código es más legible y
mantenible.
Las funciones normalmente, al acabar su ejecución devuelven un valor, que conseguimos con el
parámetro return. Se declaran con la palabra reservada function y a continuación suelen llevar un
nombre, para poder invocarlas más adelante. Si no llevan nombre se les llama funciones
anónimas.
La función del ejemplo se llama saludar, y se le pasa un único parámetro, entre paréntesis (...),
que es nombre. Ese parámetro funciona como contenedor de una variable que es utilizada dentro
del bloque de código delimitado por las llaves {...}. El comando return devolverá el String que
concatena texto con el valor que contiene el parámetro nombre.
Si declaramos una variable dentro de una función, esta variable tendrá un ámbito local al ámbito
de esa función, es decir, solo será accesible de la función hacia adentro. Pero si la definimos fuera
de una función, tendrá un ámbito global.
En la versión 6 de ECMAScript tenemos los tipos de variable let y const en lugar de var y definen
unos ámbitos específicos. const crea una constante cuyo valor no cambia durante el tiempo y let
define el ámbito de la variable al ámbito donde ha sido definida (por ejemplo en una función).
5.1 Number
Es la clase del tipo primitivo number. Se codifican en formato de coma flotante con doble
precisión (Es decir, con 64 bits / 8 bytes) y podemos representar números enteros, decimales,
hexadecimales, y en coma flotante. Veamos unos ejemplos:
La clase Number incluye los números Infinity y -Infinity para representar números muy grandes:
El rango real de números sobre el que podemos operar es ~1,797x10^308 --- 5x10^-324`. También
disponemos del valor NaN (Not A Number) para indicar que un determinado valor no representa
un número:
Para crear un número podemos hacerlo con la forma primitiva o con la clase Number. Por
simplicidad se utiliza la forma primitiva.
5.1.1.2 parseFloat()
Función similar a parseInt() que analiza si es un número de coma flotante y devuelve su
representación decimal.
5.1.1.3 number.toFixed(x)
Devuelve un string con el valor del número number redondeado al alza, con tantos decimales
como se indique en el parámetro x.
5.1.1.4 number.toExponential(x)
Devuelve un string redondeando la base o mantisa a x decimales. Es la función complementaria a
parseFloat.
5.1.1.5 number.toString(base)
Devuelve un string con el número equivalente number en la base que se pasa por parámetro. Es la
función complementaria a parseInt.
5.2 Módulo Math
Math es una clase propia de JavaScript que contiene varios valores y funciones que nos permiten
realizar operaciones matemáticas. Estos son los más utilizados:
https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Math
5.3 Array
Es una colección de datos que pueden ser números, strings, objetos, otros arrays, etc... Se puede
crear de dos formas con el literal [...] o creando una nueva instancia de la clase Array.
Se puede acceder a los elementos del array a través de su índice y con length conocer su longitud.
Como podemos ver, las propiedades son pares clave-valor, separados por comas, y podemos
acceder a ellas de forma independiente de varias formas, con la notación punto o con la notación
array:
Con la notación array, podemos acceder a las propiedades con variables. Ejemplo:
si el objeto contiene funciones se les llama métodos. Si queremos crearlas dentro de un objeto e
invocarlas, sería así:
Para crear un objeto podemos hacerlo con la notación de llaves {...} o creando una nueva instancia
de clase:
5.4.1 Anidación
Un objeto puede tener propiedades y estas propiedades tener en su interior más propiedades.
Sería una representación en forma de árbol y podemos acceder a sus propiedades de la siguiente
manera:
5.4.2 Igualdad entre objetos
Para que dos objetos sean iguales al compararlos, deben tener la misma referencia. Debemos para
ello utilizar el operador identidad ===. Si creamos dos objetos con el mismo contenido, no serán
iguales a menos que compartan la referencia. Veamos un ejemplo:
Bibliografía
JavaScript:
https://developer.mozilla.org/es/docs/Web/JavaScript
https://www.w3schools.com/js/
Evaluación
Asistencia Practica Practica Practica Practica Examen1 Examen2
Secuencial Selectivo Repetitivo Funciones
1 = -3pts
2 = -6pts 5 5 5 10 30 45
3 = -10pts