En este tutorial voy a explicar todas y cada una de las preguntas en la Prueba de JavaScript del Curso practico de JavaScript. Aunque es importante que sepan que este tutorial no es para que copien y peguen, es para que analicen y comparen sus propias respuestas.
Una variable es un espacio en memoria que almacena un valor, este puede ser un string, un numero entero o un decimal. Como JavaScript es débilmente tipado, no tenemos que especificar que tipo de variable vamos a usar, solo usamos var
. Es útil ya que se usa para propiedades que cambian de valor constantemente.
La principal diferencia es que cuando declaramos una variable no le estamos dando un valor. Solo estamos diciendo que existe, pero su valor es null
. Cuando la inicializamos, es cuando le estamos dando un valor, ya sea una string, un numero entero, decimal o incluso un array.
La principal diferencia es el tipo de valor de cada variable. Por ejemplo, si yo concateno las dos strings “te ”+ “quiero.”, lo que hace js es concatenarlas, porque entiende que ambas son strings. El resultado seria “te quiero.”.
Sin embargo, cuando yo sumo los números 1 + 3, sin comillas (“”
). Js entiende que se tiene que sumar, ya que son números. El resultado seria 4.
Por último, cuando yo quiero hacer concatenar 1 + “5”, el resultado va a ser “15”, ya que el uno va a ser convertido como un string. Yo le puedo especificar a js que el cinco sea un numero de la siguiente manera Number(“5”)
, y de esto forma me podría aplicar la suma de manera correcta.
El signo de suma, +
Determina el nombre y tipo de dato para almacenar en variables la siguiente información:
Traduce a código JavaScript las variables del ejemplo anterior y deja tu código en los comentarios.
Como JavaScript es un lenguaje debilmente tipado, uso const
para valores que NUNCA cambian y puedo usar let
o var
para variables.
const nombre = "Irving", apellido = "Juárez";
var usuario, edad, correo, adulto, ahorros, deudas;
Calcula e imprime las siguientes variables a partir de las variables del ejemplo anterior:
const nombre = "Irving", apellido = "Juárez";
var usuario, edad, correo, adulto, ahorros, deudas;
ahorros = 10000;
deudas = 3000;
console.log(`Hola, me llamo ${nombre}${apellido}. Y el dinero real que tengo es ${ahorros - deudas}`)
.
Una función es un bloque de código que nos ayuda a reutilizar código, ya que tiene la particular característica de que puede ser utilizada varias veces y con diferentes datos.
Cuando estoy repitiendo código.
Los parámetros son variables que se le pasan a la función, mientras que los argumentos son simplemente valores que se le pasan a la función. Otra forma distinta de verlo es que los parámetros ya están declarados o inicializados en el programa, mientras que los argumentos no.
Convierte el siguiente código en una función, pero, cambiando cuando sea necesario las variables constantes por parámetros y argumentos en una función:
const name = "Juan David";const lastname = "Castro Gallego";const completeName = name + lastname;const nickname = "juandc";
console.log("Mi nombre es " + completeName + ", pero prefiero que me digas " + nickname + ".");
RESPUESTA
// Constantesconst name = "Irving", lastName = "Juárez", nick = "Campeón";
const completeName = `${name}${lastName}`;
// Creacion de la funcionfunctionpresentarse(name, nickName){
console.log("Mi nombre es " + name + ", pero prefiero que me digas " + nickName + ".");
}
// Uso de la funcion
presentarse(completeName, nick);
.
Es una sentencia que nos ayuda a ejecutar un proceso o una parte de código cuando algo sucede.
Esta el if
: Este es el mas comun, ya que solo le decimos que ejecute una parte del código si sucede una acción.
En adición a este, esta el if else
, que puede ejecutar mas de una condición encadenada.
También tenemos al switch
: Este es parecido al if else
pero es mas fácil de leer, sobre todo cuando hay condicionales encadenadas.
Definitivamente, dentro de una función puede a ver condicionales y dentro de condicionales puede haber funciones.
// Condiciones dentro de funcionesfunctionmyFunction(parameterOne, parameterTwo){
if(parameterOne > parameterTwo){
@code
}else{
@code
}
}
// Funciones dentro de condicionalesif(variableOne < variableTwo){
my-functionOne();
}else{
my-functionTwo();
}
.
Replica el comportamiento del siguiente código que usa la sentencia switch utilizando if, else y else if:
const tipoDeSuscripcion = "basic";switch (tipoDeSuscripcion) {
case"Free":
console.log("Solo puedes tomar los cursos gratis");break;case"Basic":
console.log("Puedes tomar casi todos los cursos de Platzi durante un mes");break;case"Expert":
console.log("Puedes tomar casi todos los cursos de Platzi durante un año");break;case"Free":
console.log("Tú y alguien más pueden tomar TODOS los cursos de Platzi durante un año");break;
}
RESPUESTA
if(tipoDeSuscripcion === "Free"){
console.log("Solo puedes tomar los cursos gratis");
} elseif(tipoDeSuscripcion === "Basic"){
console.log("Puedes tomar casi todos los cursos de Platzi durante un mes");
} elseif(tipoDeSuscripcion === "Expert"){
console.log("Puedes tomar casi todos los cursos de Platzi durante un año");
} else{
console.log("Tú y alguien más pueden tomar TODOS los cursos de Platzi durante un año");
}
.
Replica el comportamiento de tu condicional anterior con if, else y else if, pero ahora solo con if (sin else ni else if).
if(tipoDeSuscripcion === "Free"){
console.log("Solo puedes tomar los cursos gratis");
}
if(tipoDeSuscripcion === "Basic"){
console.log("Puedes tomar casi todos los cursos de Platzi durante un mes");
}
if(tipoDeSuscripcion === "Expert"){
console.log("Puedes tomar casi todos los cursos de Platzi durante un año");
}
.
Te desafío a comentar cómo replicar este comportamiento con arrays y un solo condicional.
var tipoDeSuscripcion = "Basic";
var values = [{suscripcion: "Basic", message: "Solo puedes tomar los cursos gratis"}, {suscripcion: "Expert", message: "Puedes tomar casi todos los cursos de Platzi durante un año"}, {suscripcion: "ExpertPlus", message: "Tú y alguien más pueden tomar TODOS los cursos de Platzi durante un año"}];
values.forEach(item => {
if(item.suscripcion == tipoDeSuscripcion){
console.log(item.message);
}
})
.
Un ciclo o un loop es una manera en la cual se repite un mismo código varias veces. Existen loops en donde nosotros sabemos cuántas veces se va a repetir el código, mientras que hay otros loops en los cuales no sabemos cuántas veces se va a repetir un mismo bloque de código.
Están el ciclo for
(aquí sabemos cuántas veces se va a repetir el ciclo), el while
(aquí no sabemos cuántas veces se repetirá el ciclo) y el do while
(aquí tampoco sabemos cuántas veces se repetirá el ciclo, pero lo que si sabemos es que al principio se va a ejecutar un bloque de código)
Un loop infinito sucede cuando nosotros olvidamos hacer una acción para que un loop pare. Esto solo sucede con el ciclo while
. Es un problema porque la pantalla del navegador se puede trabar. Esto se debe a que el ciclo infinito se procesa una y otra vez sin fin, por lo que otras acciones que tiene que realizar el navegador no se realizan.
Definitivamente.
Replica el comportamiento de los siguientes ciclos for
utilizando ciclos while
:
for (let i = 0; i < 5; i++) {
console.log("El valor de i es: " + i);
}
for (let i = 10; i >= 2; i--) {
console.log("El valor de i es: " + i);
}
RESPUESTA
var i = 0;
while(i < 5){
console.log(`El valor de i es ${i}`);
i++
}
var i = 10;
while(i >= 2){
console.log(`El valor de i es ${i}`);
i--
}
.
Escribe un código en JavaScript que le pregunte a los usuarios cuánto es 2 + 2. Si responden bien, mostramos un mensaje de felicitaciones, pero si responden mal, volvemos a empezar.
RESPUESTA
var question = prompt("2 + 2 is equal to?");
if (Number(question) === 4){
console.log(`Congratulations`);
}else{
console.log(`Sorry, you are wrong :(`);
}
.
Es una lista, en ella se pueden guardar números, strings, objetos e incluso hasta otras listas.
Es un tipo de dato en JavaScript en donde podemos declarar varios títulos y sus respectivos valores. Incluso hasta pueden ser considerados listas.
Depende de la situación. Ya que un array se usa cuando solo quieres tener una lista de productos, por ejemplo. Pero un objeto se usa cuando quieres saber el producto mas otros datos en relacion al producto. En lo particular, una buena practica es usar un array de objetos.
En los objetos no puede haber arrays, pero si puede haber arrays donde dentro haya objetos.
Crea una función que pueda recibir cualquier array como parámetro e imprima su primer elemento.
var myArray = [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
functionfirstElement(ofThisArray){
console.log(ofThisArray[0]);
}firstElement(myArray);
Crea una función que pueda recibir cualquier array como parámetro e imprima todos sus elementos uno por uno (no se vale imprimir el array completo).
var myArray = [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
functionallElements(ofThisArray){
ofThisArray.forEach(item => {
console.log(item)
})
}
allElements(myArray)
Crea una función que pueda recibir cualquier objeto como parámetro e imprima todos sus elementos uno por uno (no se vale imprimir el objeto completo).
var myObject = {product: "Buzz Lightyear", price: 43, category: "toys"}
functionallElements(ofThisObject){
let objectValues = Object.values(myObject)
objectValues.forEach(item => {
console.log(item)
})
}
allElements(myObject);
Bueno, aquí termina la prueba. Espero que hayas comparado tus respuestas y sigue con el curso!
Gracias por publicar tus respuestas, me sorprendo de las variantes de respuestas para un mismo ejercicio, en especial en la sección de Listas lo diferente que pensamos.
No hay una solo forma de llegar a Roma. así como no hay una sola manera de resolver ciertos ejercicios de código.
Claro, hay unas formas que son mejores que otras, pero eso es despues…
También pueden revisar la clase de Qué son variables y constantes