Comencemos esta sección sobre funciones.
con una de las partes más fáciles, que son los parámetros predeterminados.
Y una nueva sección significa nuevos archivos de inicio.
Entonces, como siempre, obtenga el suyo del repositorio de Gitup y luego
ábralos en su VS Code.
Entonces, como siempre, ya comenzamos con el modo estricto aquí.
pero ahora hablemos de los parámetros predeterminados.
Así que a veces es útil tener funciones en las que algunos
Los parámetros se establecen de forma predeterminada. Por aquí
no tenemos que pasarlos manualmente en caso de que no lo hagamos
desea cambiar el valor predeterminado.
Ahora en esta sección,
vamos a continuar con el tema de la aerolínea que
comenzado por el final de la última sección.
Ahora vamos a crear una función de reserva muy básica y
vamos a hacer eso,
partiendo de los conocimientos que ya teníamos previamente.
Así que sin el valor predeterminado
parámetros primero,
entonces solo una función normal y en esta función,
necesitamos pasar el número de vuelo,
el número de pasajeros
y el
precio.
Y luego simplemente usemos estos datos para crear un objeto y
empuje eso en alguna matriz de reservas.
Así que reserva,
y ahora aquí podemos usar la sintaxis literal de objeto mejorada
que aprendimos en la sección anterior.
Entonces no podemos crear un objeto con una propiedad de número de vuelo
sin tener que hacer esto, ¿recuerdas?
Así que simplemente definimos una variable aquí y eso luego
crear una propiedad con este nombre y también el valor que es
en la variable.
Y luego registrémoslo en una consola.
Y luego vamos a crear una matriz aquí que
contienen estas reservas.
Entonces comenzamos vacíos aquí y luego simplemente los empujamos cada uno
tiempo hay una reserva.
Así que básicamente para que la aerolínea mantenga
las reservas en algún tipo de
sistema.
Y todo esto es muy ficticio.
Es solo para mostrarle los parámetros predeterminados en este caso.
Y hablando de eso,
en base a lo que aprendimos en la última sección sobre
cortocircuito, ¿cómo implementaríamos los parámetros predeterminados?
Bien,
comencemos llamando a esta función sin especificar algunos
parámetros y ver lo que obtenemos entonces.
Así que crea una reserva.
Y ahora con solo el número de vuelo, digamos LH 123,
y ahora necesitamos un nuevo terminal como siempre.
Así que de nuevo, presiono tocar aquí
para completar automáticamente la operación.
Y de hecho aquí está nuestro navegador con nuestra página ya
correr.
Ahora aquí hay algún tipo de problema.
Ah, y eso es porque llamamos a esta reserva aquí,
lo mismo que la matriz.
Y entonces aquí está tratando de empujar este objeto hacia
básicamente en sí mismo.
Entonces necesitamos crear reservas aquí, dándole un nuevo nombre.
Y de hecho ahora tenemos aquí el resultado de este objeto,
y ahora funciona.
Y aquí vemos el resultado de este objeto de reserva.
Entonces, lo que queríamos ver aquí era que el número de pasajeros
y el precio se establece en indefinido porque no especificamos
a ellos.
Y ahora podemos usar los cortocircuitos a nuestro favor.
porque sabemos que estos son valores falsos.
Bueno.
Y lo que estoy haciendo aquí es básicamente la forma antigua de establecer
parámetros predeterminados,
solo para recordar cómo funcionaría antes de ES6.
Así que digamos que quería establecer el número de pasajeros en uno
por defecto.
Básicamente, reasignaríamos este parámetro de esta manera.
Entonces numPassengers es numPassengers o uno,
que es el valor predeterminado.
Y esto funciona por las razones que aprendimos en el
última sección, que es que siempre que este sea un valor falso,
que indefinido es,
entonces el resultado de la
El operador OR aquí será esta segunda operante.
Así que este valor aquí en este caso uno,
y ahora podemos hacer lo mismo con el premio.
Digamos que 199 es el precio predeterminado.
Entonces, si recargamos esto ahora,
entonces de hecho obtenemos nuestros valores predeterminados aquí.
Bueno. Sin embargo, viniendo de esta parte del código,
esto es un montón de feo abrigo repetitivo. Y otra vez,
esta es la forma ES5 de hacerlo.
Así que sacaré esto.
Déjame en realidad, escribir
ES5 aquí porque ahora en ES6 hay una mejor manera.
Así que todo lo que tenemos que hacer es escribir esto es igual a uno.
Y ahora esto aquí será el valor predeterminado
y lo mismo por el precio.
Digamos a 199.
Y ahora, si recargamos, obtenemos el mismo resultado aquí.
Y esto aquí, por supuesto, se ve mucho mejor y es
mucho más intuitivo de leer.
Ahora, por supuesto, podemos anular estos valores predeterminados.
De lo contrario, esto no tendría mucho sentido.
Entonces intentemos
H 123, y ahora por
dos pasajeros, y digamos 800.
Y ahora, por supuesto, estos valores son los que
especificado aquí en lugar de los valores predeterminados.
Ahora,
una cosa que es realmente genial acerca de los valores predeterminados es
que pueden contener cualquier expresión.
Por ejemplo, podríamos hacer *1.2, por ejemplo,
entonces obtendríamos esto aquí.
Bueno.
Pero lo que es aún más útil es que en realidad podemos usar el
valores de los otros parámetros que se establecieron antes.
Así que ahora podemos decir que el precio debe calcularse
en función del número de pasajeros.
Está bien.
Entonces, si ahora hacemos esto, creamos la reserva nuevamente,
solo un número plano aleatorio aquí,
digamos de nuevo, dos
pero luego con cinco, obtendremos otro valor.
Así que de hecho ves 398.
Entonces el número continúa aquí abajo y luego 995
Y así, el precio ahora se calcula dinámicamente de forma predeterminada,
en base a este valor que especificamos y al número de
pasajeros Y otra vez,
esto solo funciona para los parámetros que están definidos en la lista
antes de este.
Entonces esto no funcionaría porque JavaScript básicamente
especifica estos parámetros en los pedidos y como alcanza.
Ahora mismo, cuando alcanza el precio,
aún no conoce el número de pasajeros.
Y entonces eso no funcionaría.
Ahora, otra cosa que es importante tener en cuenta aquí es que nosotros
no podemos omitir argumentos aquí cuando llamamos a una función.
Así por ejemplo,
digamos que queríamos dejar el número de pasajeros como el
valor predeterminado, pero luego especifique el precio.
Así que no podemos hacer esto.
Así que omitiendo el número de pasajeros ahora,
y luego solo especificando un nuevo precio.
Así que si hacemos esto,
entonces, por supuesto, el número de pasajeros se convierte en 1000
porque el segundo argumento aquí siempre se asignará a
el segundo parámetro.
Entonces, si quisiéramos dejar este año por defecto,
hay un buen truco.
Entonces, el número de pasajeros que simplemente podemos establecer como indefinido,
está bien,
y esto funciona de nuevo porque establecer el parámetro en
indefinido,
es lo mismo que ni configurarlo, ¿recuerdas?
Así que cuando no establecemos un parámetro
así que cuando no pasamos un argumento a ese parámetro,
entonces tomará el valor de indefinido.
Y así, especificar undefined aquí es exactamente lo mismo.
Y así es como básicamente omitimos un parámetro predeterminado
que queremos dejar por defecto.
Y ahora, mientras lo vuelvo a cargar aquí,
ves que el número de pasajeros sigue siendo uno.
Y efectivamente el precio es ahora, 1000.
Bueno. Así que otra muy buena adición.
al idioma en ES6 aquí
y bastante fácil de entender también.
Así que nos vemos en el próximo vídeo.