js functions

16
makeitreal .camp Hablemos de Funciones Germán Escobar germanescobar.net @germanescobar

Upload: german-escobar

Post on 07-Aug-2015

63 views

Category:

Software


0 download

TRANSCRIPT

Page 1: JS Functions

makeitreal.camp

Hablemos de Funciones

Germán Escobar germanescobar.net!@germanescobar!

!

Page 2: JS Functions

makeitreal.campFunciones

Función

Parámetros

Valor de retorno

Page 3: JS Functions

makeitreal.campFunciones

En JavaScript, las funciones están en todos lados.

!

A veces son truculentas.

Page 4: JS Functions

makeitreal.campAsignar a Variables

var saludar = function() { console.log(“Hola”); };

Page 5: JS Functions

makeitreal.campParámetro de otra función

function saludar(func) { func(“Hola”); } !

saludar(function(saludo) { console.log(saludo); });

Page 6: JS Functions

makeitreal.campParámetro de otra función

function saludar(func) { func(“Hola”); } !

var f = function(saludo) { console.log(saludo); } saludar(f);

Page 7: JS Functions

makeitreal.campParámetro de otra función

for (var i=0; i < arr.length; i++) { console.log(arr[i]); } !

function each(arr, action) { for (var i=0; i < arr.length; i++) action(arr[i]); }

Page 8: JS Functions

makeitreal.campParámetro de otra función

each([1, 2, 3], function(elem) { console.log(elem); }); !

var sum = 0; each([1, 2, 3], function(elem) { sum += elem; });

Page 9: JS Functions

makeitreal.campParámetro de otra función

var arr = [1, 2, 3]; var arr2 = []; !

for (var i=0; i < arr.length; i++) { arr2.push(arr[i] * 2); }

Page 10: JS Functions

makeitreal.campParámetro de otra función

function map(arr, action) { var arr2 = []; for (var i=0; i < arr.length; i++) { arr2.push(action(arr[i])); } return arr2; }

Page 11: JS Functions

makeitreal.campParámetro de otra función

var a = map([1, 2, 3], function(elem) { return elem * 2; }); !

var b = map([1, 2, 3], Math.sqrt); !

map([‘1’, ‘2’], Integer.parseInt);

Page 12: JS Functions

makeitreal.campRetornar una función

function createBeeper() { return function() { alert(“beep”); }; } !

var beeper = createBeeper(); beeper();

Page 13: JS Functions

function counter() { var count = 0; return function() { console.log(count++); } }

makeitreal.campRetornar una función

Page 14: JS Functions

makeitreal.campRetornar una función

var count = counter(); !

count(); count(); count();

Page 15: JS Functions

makeitreal.campLas funciones son objetos!

function prueba() {} !

prueba.nombre = “German”;

Page 16: JS Functions

makeitreal.campCuidado con el this!

var obj = { name: “German”, sayHello: function() { return “Hola ” + this.name; } }; !

var hola = obj.sayHello; hola();