Herramientas de usuario

Herramientas del sitio


informatica:lenguajes_de_programacion:javascript:start

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
informatica:lenguajes_de_programacion:javascript:start [2026/06/06 08:32] – [Parámetros opcionales] admininformatica:lenguajes_de_programacion:javascript:start [2026/06/06 20:44] (actual) – [Parámetros] admin
Línea 1: Línea 1:
 ====== Javascript ====== ====== Javascript ======
  
 +Aunque he programado durante años en javascript, siempre me llamó la atención lo flexible que es para declarar la función, he hecho estos apuntes para mostrar como ordeno lo aprendido de esta diversidad en su uso y que a mí me confundía a veces.
 +
 +Mostrar las diferencias en javascript ES6/ES7/ES8/ES9 FIXME
 ===== Función ===== ===== Función =====
  
 Se puede declarar de 3 maneras. Se puede declarar de 3 maneras.
  
-==== Función Declarativa (Named Function) ====+==== Declaración de función ==== 
 + 
 +=== Función Declarativa (Named Function) ===
  
 <code javascript> <code javascript>
Línea 14: Línea 19:
 </code> </code>
  
-==== Función Anónima ====+=== Función Anónima ===
  
   * [[https://en.wikipedia.org/wiki/Anonymous_function]]   * [[https://en.wikipedia.org/wiki/Anonymous_function]]
Línea 24: Línea 29:
 </code> </code>
  
-==== Función Flecha (Arrow Function) ====+=== Función Flecha (Arrow Function) ===
  
 <code javascript> <code javascript>
Línea 32: Línea 37:
 </code> </code>
  
-==== Parámetros opcionales ====+==== Parámetros ==== 
 + 
 +  * [[https://devforum.roblox.com/t/arguments-vs-parameters-why-understanding-the-difference-matters/3338751]] 
 +  * [[https://press.rebus.community/programmingfundamentals/chapter/parameters-and-arguments/]] 
 + 
 +=== Parámetros opcionales ===
  
 En typescript se puede poner un "?" al final de un parámetro, en javascript **NO EXISTE LA OPCION "?"** pero aprovechando que no sale mensaje de error si se pone más parámetros se puede manejar verificando si no se declaró el parámetro con "undefined", uso el typeof en el IF el igual repetido 3 veces que se usa para comparar el tipo de dato. En typescript se puede poner un "?" al final de un parámetro, en javascript **NO EXISTE LA OPCION "?"** pero aprovechando que no sale mensaje de error si se pone más parámetros se puede manejar verificando si no se declaró el parámetro con "undefined", uso el typeof en el IF el igual repetido 3 veces que se usa para comparar el tipo de dato.
Línea 46: Línea 56:
  
 console.log( saludar( "Billy" ) ); console.log( saludar( "Billy" ) );
-// 'Hola billy!.'+// 'Hola Billy!.'
  
 console.log( saludar( "Billy", "amigo") ); console.log( saludar( "Billy", "amigo") );
-// 'Hola billy amigo!.'+// 'Hola Billy amigo!.'
  
 console.log( saludar( "Billy", "amigo", "bla bla bla") ); console.log( saludar( "Billy", "amigo", "bla bla bla") );
-// 'Hola billy amigo!.'+// 'Hola Billy amigo!.'
 </code> </code>
  
-==== Parámetros de cantidad variable ====+otra forma sin el else, en este caso se iguala la base con la altura si no se define la altura. 
 +<code javascript> 
 +function area(base, altura) { 
 +  if (altura === undefined) { 
 +    altura base; // Comportamiento por defecto 
 +  } 
 +  return base * altura; 
 +
 +</code>
  
 +otra forma es definiendo en la declaración del parámetro su valor por defecto.
  
 +<code javascript>
 +function saludar( nombre, cercania = "amigo" ){
 +
 +   return `Hola ${nombre} ${cercania}!.`;
 +    
 +}
 +</code>
 +
 +otra forma es que se puede reemplazar el if con el operador OR (||)
 +
 +<code javascript>
 +function configurar(opcion) {
 +  opcion = opcion || 'default';
 +}
 +</code>
 +
 +con el operador OR si "opcion" no tiene valor coge el 'default'.
 +
 +=== Parámetros de cantidad variable ===
 +
 +En este caso los parametros se recogen en un array.
 +<code javascript>
 +function sumar(...numeros){
 +    return numeros.reduce( (total, n) => total + n, 0 );
 +
 +}
 +
 +console.log( sumar( 10,23,56,34 ) );
 +// 123
 +</code>
informatica/lenguajes_de_programacion/javascript/start.1780734769.txt.gz · Última modificación: 2026/06/06 08:32 por admin