Continuando con esta serie de post sobre Javascript.
39. Mandar o no mandar parámetros.
function suma(x, y=1){ return x+y; } document.write(suma(4));//5 document.write(suma(4,3));//7 document.write(suma(2));//3
La función suma recibe dos parámetros (x,y), por default y tendrá el valor de 1, así que
si omitimos un valor la función funcionará sin problema alguno.
Otro ejemplo. Cambiamos el color de un div mandando uno o dos parámetros.
function cambiaColor(elemento, color='red'){ var contenedor = document.getElementById(elemento); contenedor.style.backgroundColor = color; } cambiaColor('panel'); cambiaColor('panel','blue'); <div id="panel"> <p>Hola, mundo.</p> </div>
40. let y const
var variableGlobal = 232; const ConstantePI =3.141519; function nada(){ let variableLocal = variableGlobal; let variableLocalPI = ConstantePI; }
Con el nuevo estandar de Javascript es importante entender que la palabra let nos permite definir una variable 'local', una que este definida en un bloque en particular. El ámbito es lo que lo caracteriza:
function decidir(dato){ if( dato == 'si'){ let numero = 33; } console.log(numero);//Esto dará un error }
Y const para variables cuyo valor es inmutable (que no puede cambiar).
const boton = document.querySelector('.miBoton'); const label = document.getElementById('etiqueta'); /*Esto ya no es permitido: ya los hemos definido como una constante*/ label = "Hola"; boton = new Date();
Crear funciones con let es muy sencillo:
/*Variables*/ const contenido1 = document.getElementById('contenido1'); const btn1 = document.getElementById('btn1'); /*Funciones*/ let inicio = ()=> console.log('%c Hola, amigos','background-color:black;color:orange;'); let saludar = (nombre)=> window.alert(`Hola ${nombre} eres bienvenido`); let miNombre = () => prompt('Tu nombre:'); /*Listeners*/ btn1.addEventListener('click',()=>{ saludar(miNombre()) }); window.addEventListener('load',inicio());
41.Keypress y KeyUp. Escribir un texto y que se muestre en mayúsculas.
<input type="text" id="txt1" value="" placeholder="Coloca tu nombre" />
Los eventos 'keypress' y 'keyup' nos ayudan a captar las teclas presionadas.
const texto = document.querySelector('#txt1'); txt1.addEventListener('keypress',()=>{ txt1.value = txt1.value.toString().toUpperCase(); }); txt1.addEventListener('keyup',()=>{ txt1.value = txt1.value.toString().toUpperCase(); });
Más contenido en el próximo post.