SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
ES6
Valores por default en argumentos
Valores por default en argumentos
● En EcmaScript 6 podemos recibir valor por omisión o default en los
parámetros de las funciones. Pueden ser definidos como variables
primitivas, funciones, expresiones o arreglos.
Valores por default en argumentos
function multiplicar(a, b) {
b = typeof b !== 'undefined' ? b : 1;
return a*b;
}
multiplicar(5); // 5
Valores por default en argumentos
function multiplicar(a, b = 1) {
return a*b;
}
multiplicar(5); // 5
Valores por default en argumentos
function f (x, y = 7, z = 42) {
return x + y + z
}
f(1) === 50
Valores por default en argumentos
function cambiaFondo(elemento, color = 'yellow') {
elemento.style.backgroundColor = color;
}
cambiaFondo(algunDiv); // color configurado a 'yellow'
cambiaFondo(algunDiv, undefined); // color configurado a 'yellow' también
cambiaFondo(algunDiv, 'blue'); // color configurado a 'blue'
Valores por default en argumentos
function agregar(valor, arreglo = []) {
arreglo.push(valor);
return arreglo;
}
agregar(1); //[1]
agregar(2); //[2], no [1, 2]
Valores por default en argumentos
function llamarAlgo(cosa = algo()) { return cosa; }
function algo(){
return "Hola";
}
llamarAlgo(); //hola
Valores por default en argumentos
function f(x=1, y) {
return [x, y];
}
f(); // [1, undefined]
Valores por default en argumentos
function f([x, y] = [1, 2], {z: z} = {z: 3}) {
return x + y + z;
}
f(); // 6
ES6
Argumentos extendidos
Argumentos extendidos
● Extended Parameter Handling
● Rest Parameter
● Aggregation of remaining arguments into single parameter of variadic
functions.
function f (x, y, ...a) {
return (x + y) * a.length
}
f(1, 2, "hello", true, 7) === 9
Referencias
http://es6-features.org/#DefaultParameterValues
https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Funciones/P
arametros_por_defecto

Más contenido relacionado

Destacado (8)

Nuevos Métodos en ES6
Nuevos Métodos en ES6Nuevos Métodos en ES6
Nuevos Métodos en ES6
 
Literales octales y binarias:
Literales octales y binarias: Literales octales y binarias:
Literales octales y binarias:
 
Nuevas características de los objetos en JavaScript ES6
Nuevas características de los objetos en JavaScript ES6Nuevas características de los objetos en JavaScript ES6
Nuevas características de los objetos en JavaScript ES6
 
El nuevo objeto para internacionalización y localización Intl
El nuevo objeto para internacionalización y localización IntlEl nuevo objeto para internacionalización y localización Intl
El nuevo objeto para internacionalización y localización Intl
 
El nuevo tipo de datos "símbolo" o "symbol"
El nuevo tipo de datos "símbolo" o "symbol"El nuevo tipo de datos "símbolo" o "symbol"
El nuevo tipo de datos "símbolo" o "symbol"
 
Mejoras en las expresiones regulares
Mejoras en las expresiones regularesMejoras en las expresiones regulares
Mejoras en las expresiones regulares
 
La programación orientada a objetos con JavaScript ES6
La programación orientada a objetos con JavaScript ES6La programación orientada a objetos con JavaScript ES6
La programación orientada a objetos con JavaScript ES6
 
Objetos de propagación o ...spread
Objetos de propagación o ...spreadObjetos de propagación o ...spread
Objetos de propagación o ...spread
 

Más de Francisco Javier Arce Anguiano

HTML5 API WebSQL Database: DML: Data Manipulation Language
HTML5 API WebSQL Database: DML: Data Manipulation LanguageHTML5 API WebSQL Database: DML: Data Manipulation Language
HTML5 API WebSQL Database: DML: Data Manipulation LanguageFrancisco Javier Arce Anguiano
 
Crear el perfil provisional para desarrollar aplicaciones iOS
Crear el perfil provisional para desarrollar aplicaciones iOSCrear el perfil provisional para desarrollar aplicaciones iOS
Crear el perfil provisional para desarrollar aplicaciones iOSFrancisco Javier Arce Anguiano
 

Más de Francisco Javier Arce Anguiano (20)

HTML5 API WebSQL Database: DML: Data Manipulation Language
HTML5 API WebSQL Database: DML: Data Manipulation LanguageHTML5 API WebSQL Database: DML: Data Manipulation Language
HTML5 API WebSQL Database: DML: Data Manipulation Language
 
HTML5 API WebSQL Database: Funciones de agregado
HTML5 API WebSQL Database: Funciones de agregadoHTML5 API WebSQL Database: Funciones de agregado
HTML5 API WebSQL Database: Funciones de agregado
 
WebSQl DataBase HTML5-dql - data query language
WebSQl DataBase HTML5-dql - data query languageWebSQl DataBase HTML5-dql - data query language
WebSQl DataBase HTML5-dql - data query language
 
Las etiquetas estructurales en html5
Las etiquetas estructurales en html5Las etiquetas estructurales en html5
Las etiquetas estructurales en html5
 
Los metadatos de HTML5
Los metadatos de HTML5Los metadatos de HTML5
Los metadatos de HTML5
 
El doctype de HTML5
El doctype de HTML5El doctype de HTML5
El doctype de HTML5
 
Historia de HTML5
Historia de HTML5Historia de HTML5
Historia de HTML5
 
SQLite y PHP: DQL - data query language
SQLite y PHP: DQL - data query languageSQLite y PHP: DQL - data query language
SQLite y PHP: DQL - data query language
 
Introducción a SQLite 3 y PHP
Introducción a SQLite 3 y PHPIntroducción a SQLite 3 y PHP
Introducción a SQLite 3 y PHP
 
Crear el perfil provisional para desarrollar aplicaciones iOS
Crear el perfil provisional para desarrollar aplicaciones iOSCrear el perfil provisional para desarrollar aplicaciones iOS
Crear el perfil provisional para desarrollar aplicaciones iOS
 
Identificar el dispositivo para desarrollar en iOS
Identificar el dispositivo para desarrollar en iOSIdentificar el dispositivo para desarrollar en iOS
Identificar el dispositivo para desarrollar en iOS
 
Crear un ID para la aplicación iOS
Crear un ID para la aplicación iOSCrear un ID para la aplicación iOS
Crear un ID para la aplicación iOS
 
Crear un certificado P12 para desarrollar en iOS
Crear un certificado P12 para desarrollar en iOSCrear un certificado P12 para desarrollar en iOS
Crear un certificado P12 para desarrollar en iOS
 
Crear certificado CSR para iOS
Crear certificado CSR para iOSCrear certificado CSR para iOS
Crear certificado CSR para iOS
 
Crear una cuenta de desarrollador para iOS
Crear una cuenta de desarrollador para iOSCrear una cuenta de desarrollador para iOS
Crear una cuenta de desarrollador para iOS
 
Apuntes: SublimeText 3
Apuntes: SublimeText 3Apuntes: SublimeText 3
Apuntes: SublimeText 3
 
Apuntes; Aptana Studio 3
Apuntes;  Aptana Studio 3Apuntes;  Aptana Studio 3
Apuntes; Aptana Studio 3
 
Apuntes: manejo de eventos en javascript
Apuntes: manejo de eventos en javascriptApuntes: manejo de eventos en javascript
Apuntes: manejo de eventos en javascript
 
Apuntes: los objetos del navegador de Javascript
Apuntes: los objetos del navegador de JavascriptApuntes: los objetos del navegador de Javascript
Apuntes: los objetos del navegador de Javascript
 
Apuntes: Arreglos y objetos en JavaScript
Apuntes: Arreglos y objetos en JavaScriptApuntes: Arreglos y objetos en JavaScript
Apuntes: Arreglos y objetos en JavaScript
 

Último

Esquema Organizacional Cosapi (Constructora)
Esquema Organizacional Cosapi (Constructora)Esquema Organizacional Cosapi (Constructora)
Esquema Organizacional Cosapi (Constructora)Eder Diaz Flores
 
Mapas Conceptuales finales Rubén finales.pptx
Mapas Conceptuales finales Rubén finales.pptxMapas Conceptuales finales Rubén finales.pptx
Mapas Conceptuales finales Rubén finales.pptxjose880240
 
P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...
P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...
P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...danielpoza1
 
diapositivas tiktok.KAY (1) (1) (1).pptx
diapositivas tiktok.KAY (1) (1) (1).pptxdiapositivas tiktok.KAY (1) (1) (1).pptx
diapositivas tiktok.KAY (1) (1) (1).pptxLDACORGANIZACION
 
Antenas, tipos de antenas, diseño basico de una antena y parámetros.pdf
Antenas, tipos de antenas, diseño basico de una antena y parámetros.pdfAntenas, tipos de antenas, diseño basico de una antena y parámetros.pdf
Antenas, tipos de antenas, diseño basico de una antena y parámetros.pdfperezreyesalberto10
 
Emprende en SPA Segundo día CENEC Mexico
Emprende en SPA Segundo día CENEC MexicoEmprende en SPA Segundo día CENEC Mexico
Emprende en SPA Segundo día CENEC MexicoCENECOnline
 
Presentacion Seguridad y Privacidad en la Web
Presentacion Seguridad y Privacidad en la WebPresentacion Seguridad y Privacidad en la Web
Presentacion Seguridad y Privacidad en la Webfernandalunag19
 

Último (7)

Esquema Organizacional Cosapi (Constructora)
Esquema Organizacional Cosapi (Constructora)Esquema Organizacional Cosapi (Constructora)
Esquema Organizacional Cosapi (Constructora)
 
Mapas Conceptuales finales Rubén finales.pptx
Mapas Conceptuales finales Rubén finales.pptxMapas Conceptuales finales Rubén finales.pptx
Mapas Conceptuales finales Rubén finales.pptx
 
P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...
P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...
P7_E1_DanielPoza.pdf Los avances en los sistemas de comunicascion y su difusi...
 
diapositivas tiktok.KAY (1) (1) (1).pptx
diapositivas tiktok.KAY (1) (1) (1).pptxdiapositivas tiktok.KAY (1) (1) (1).pptx
diapositivas tiktok.KAY (1) (1) (1).pptx
 
Antenas, tipos de antenas, diseño basico de una antena y parámetros.pdf
Antenas, tipos de antenas, diseño basico de una antena y parámetros.pdfAntenas, tipos de antenas, diseño basico de una antena y parámetros.pdf
Antenas, tipos de antenas, diseño basico de una antena y parámetros.pdf
 
Emprende en SPA Segundo día CENEC Mexico
Emprende en SPA Segundo día CENEC MexicoEmprende en SPA Segundo día CENEC Mexico
Emprende en SPA Segundo día CENEC Mexico
 
Presentacion Seguridad y Privacidad en la Web
Presentacion Seguridad y Privacidad en la WebPresentacion Seguridad y Privacidad en la Web
Presentacion Seguridad y Privacidad en la Web
 

Valores por default en argumentos