SlideShare una empresa de Scribd logo
JavaScript
Funciones
Funciones definidas por el usuario
• JavaScript contiene funciones ya construidas
(alert, prompt ).
• JavaScript permite definir funciones e
invocarlas posteriormente.
• Una función agrupa normalmente código que
se ejecuta con un fin determinado.
Definición de funciones
• La definición de una función comienza con la
palabra reservada function
• A continuación, un identificador y entre
paréntesis los parámetros que admite la
función.
• El cuerpo de la función estará delimitado por
llaves.
• La palabra reservada return para devolver un
valor.
Ejemplo: declaración de una función
function valor_absoluto (numero){
if (numero < 0){
numero = - numero;
}
return numero
}
Nombre de la función
Parámetro
Cuerpo de la función
function nombre_de_la_función (lista_de_parámetros){
lista_de_instrucciones
}
Sintaxis
Invocación de funciones
• Una función puede ser invocada en cualquier
lugar de un documento HTML donde se pueda
incluir código JavaScript.
• Antes de ejecutar ninguna instrucción, el
navegador espera a cargar todas las
definiciones de funciones.
• Es posible invocar una función aún cuando no
se haya producido su carga.
Ejemplos: invocación de funciones
function mcd ( x, y){
var resto=0;
while ( x % y != 0 ){
resto= x % y;
x = y;
y = resto;
}
return y;
}
var aux= mcd (34, 12);
// la variable aux tendrá el valor 2
var aux = mcd (15,aux);
// la variable aux tendrá el valor 1
var aux = mcd (25,45) * 4;
// la variable aux tendrá el valor 20
Declaración Invocación
Ámbito de las variables
• El ámbito de una variable definida en una
función es el cuerpo de la función.
• Si dentro de una función no se ha definido una
función con el mismo identificador de una
variable que se encuentra fuera de la función,
la variable externa puede utilizarse dentro de
la función.
Ejemplo: ámbito de una variable
var x = 0;
var z = 3;
var m = 1;
function abracadabra ( x, y){
var z = 0;
while ( x > y ){
x = x - 1;
y = y + 1;
m = m + 1;
}
return y;
}
Los identificadores se refieren a los
parámetros de la función y a la
variable definida dentro de la
función (z)
Se refiere a la variable local, pues
no se ha definido ninguna variable
local con el mismo identificador.
La pila de llamadas
• Cuando se invoca a una función, el control de
la ejecución se transfiere a la función.
• Se almacena el estado el programa, para
posteriormente a la finalización de la función
devolver el control a aquel (desapilando los
valores antes almacenados)
• Este comportamiento permite la recursión.
Argumentos
• En la declaración de una función se incluyen
los argumentos con los que se invocará.
• Si se produce la invocación con mas
argumentos de los que hay en la cabecera, los
que sobren se ingnorarán.
• Es posible que una función pueda “capturar”
los argumentos con los que fue invocada.
Diseño de funciones
• Las funciones permiten:
– Agrupar código que se repite una y otra vez.
– Crear una función en el sentido matemático
– Recursión
Ejemplo I
function mcd ( x, y){
var resto=0;
while ( x % y != 0 ){
resto= x % y;
x = y;
y = resto;
}
return y;
}
Esta función permite calcular el máximo
común divisor de dos números, utilizando el
algoritmo de Euclides
Procedimiento:
Dividimos un número entre otro, si la
división es exacta (el resto es 0), el máximo
común divisor es el divisor, en otro caso (el
resto es distinto de cero), cambiar el
dividendo por el divisor y el divisor por el
dividendo, volver hacer el proceso hasta
que el resto sea cero.
Ejemplo II
function factorial (numero){
var resultado = 1;
while (numero != 0){
resultado = resultado * numero;
numero = numero - 1;
}
return resultado;
}
Función iterativa
function factorial (numero){
var resultado = 1;
if (numero == 1){
return 1;
}
else{
return numero*factorial (numero - 1);
}
}
Función recursiva
Cálculo del
factorial de un
número
Ejemplo III
function es_primo (numero){
var cota = Math.floor(numero / 2);
var candidato = 2;
var primo = true;
while (primo && candidato <= cota){
if (numero % candidato == 0){
primo = false;
}
candidato = candidato + 1;
}
return primo;
}
Esta función devuelve
verdadero si el número es
primo, y falso en otro caso
Ejemplo: invocación de una función
function es_primo (numero){
var cota = Math.floor(numero / 2);
var candidato = 2;
var primo = true;
while (primo && candidato <= cota){
if (numero % candidato == 0){
primo = false;
}
candidato = candidato + 1;
}
return primo;
}
var resultado = '';
for (i=2; i <= 1000; i++){
if (es_primo(i)){
resultado = resultado + ' - ' + i;
}
}
alert(resultado);
Este código invoca a la
función es_primo para
mostrar los números primos
que se encuentran entre 2 y
1.000.

Más contenido relacionado

La actualidad más candente

Clean Code
Clean CodeClean Code
Clean Code
Hendrik Ebel
 
Asynchronous JavaScript Programming with Callbacks & Promises
Asynchronous JavaScript Programming with Callbacks & PromisesAsynchronous JavaScript Programming with Callbacks & Promises
Asynchronous JavaScript Programming with Callbacks & Promises
Hùng Nguyễn Huy
 
Parallel streams in java 8
Parallel streams in java 8Parallel streams in java 8
Parallel streams in java 8
David Gómez García
 
Elementos básicos de programación y ruby
Elementos básicos de programación y rubyElementos básicos de programación y ruby
Elementos básicos de programación y ruby
Samir Chirinos
 
If-else and switch-case
If-else and switch-caseIf-else and switch-case
If-else and switch-case
Manash Kumar Mondal
 
Clean Code: Chapter 3 Function
Clean Code: Chapter 3 FunctionClean Code: Chapter 3 Function
Clean Code: Chapter 3 Function
Kent Huang
 
Entrada y salida de datos en c
Entrada y salida de datos en cEntrada y salida de datos en c
Entrada y salida de datos en c
Denisse C
 
Decision Making and Looping
Decision Making and LoopingDecision Making and Looping
Decision Making and Looping
Munazza-Mah-Jabeen
 
Algoritmos y diagramas de flujos
Algoritmos y diagramas de flujosAlgoritmos y diagramas de flujos
Algoritmos y diagramas de flujos
Gustavo Tovar
 
Packages and interfaces
Packages and interfacesPackages and interfaces
Packages and interfaces
bhuvaneshwariA5
 
Introduccion a c++
Introduccion a c++Introduccion a c++
Introduccion a c++
Israel Espinoza
 
Qt test framework
Qt test frameworkQt test framework
Qt test framework
ICS
 
1. Menggunakan Peralatan Peripheral.pdf
1. Menggunakan Peralatan Peripheral.pdf1. Menggunakan Peralatan Peripheral.pdf
1. Menggunakan Peralatan Peripheral.pdf
MAN4BANTUL
 
Estructuras de control en la programación.
Estructuras de control en la programación.Estructuras de control en la programación.
Estructuras de control en la programación.
Jesus Freites
 
Inter threadcommunication.38
Inter threadcommunication.38Inter threadcommunication.38
Inter threadcommunication.38myrajendra
 
Java method
Java methodJava method
Java method
sunilchute1
 
Control structures in java
Control structures in javaControl structures in java
Control structures in java
VINOTH R
 
Mockito vs JMockit, battle of the mocking frameworks
Mockito vs JMockit, battle of the mocking frameworksMockito vs JMockit, battle of the mocking frameworks
Mockito vs JMockit, battle of the mocking frameworks
EndranNL
 
Qbasic Tutorial
Qbasic TutorialQbasic Tutorial
Qbasic Tutorial
Joy Hilary Yambao
 
Golang
GolangGolang
Golang
Felipe Mamud
 

La actualidad más candente (20)

Clean Code
Clean CodeClean Code
Clean Code
 
Asynchronous JavaScript Programming with Callbacks & Promises
Asynchronous JavaScript Programming with Callbacks & PromisesAsynchronous JavaScript Programming with Callbacks & Promises
Asynchronous JavaScript Programming with Callbacks & Promises
 
Parallel streams in java 8
Parallel streams in java 8Parallel streams in java 8
Parallel streams in java 8
 
Elementos básicos de programación y ruby
Elementos básicos de programación y rubyElementos básicos de programación y ruby
Elementos básicos de programación y ruby
 
If-else and switch-case
If-else and switch-caseIf-else and switch-case
If-else and switch-case
 
Clean Code: Chapter 3 Function
Clean Code: Chapter 3 FunctionClean Code: Chapter 3 Function
Clean Code: Chapter 3 Function
 
Entrada y salida de datos en c
Entrada y salida de datos en cEntrada y salida de datos en c
Entrada y salida de datos en c
 
Decision Making and Looping
Decision Making and LoopingDecision Making and Looping
Decision Making and Looping
 
Algoritmos y diagramas de flujos
Algoritmos y diagramas de flujosAlgoritmos y diagramas de flujos
Algoritmos y diagramas de flujos
 
Packages and interfaces
Packages and interfacesPackages and interfaces
Packages and interfaces
 
Introduccion a c++
Introduccion a c++Introduccion a c++
Introduccion a c++
 
Qt test framework
Qt test frameworkQt test framework
Qt test framework
 
1. Menggunakan Peralatan Peripheral.pdf
1. Menggunakan Peralatan Peripheral.pdf1. Menggunakan Peralatan Peripheral.pdf
1. Menggunakan Peralatan Peripheral.pdf
 
Estructuras de control en la programación.
Estructuras de control en la programación.Estructuras de control en la programación.
Estructuras de control en la programación.
 
Inter threadcommunication.38
Inter threadcommunication.38Inter threadcommunication.38
Inter threadcommunication.38
 
Java method
Java methodJava method
Java method
 
Control structures in java
Control structures in javaControl structures in java
Control structures in java
 
Mockito vs JMockit, battle of the mocking frameworks
Mockito vs JMockit, battle of the mocking frameworksMockito vs JMockit, battle of the mocking frameworks
Mockito vs JMockit, battle of the mocking frameworks
 
Qbasic Tutorial
Qbasic TutorialQbasic Tutorial
Qbasic Tutorial
 
Golang
GolangGolang
Golang
 

Destacado

Numeros racionales
Numeros racionalesNumeros racionales
Numeros racionales
jcremiro
 
Semejanza: Teorema tales
Semejanza: Teorema talesSemejanza: Teorema tales
Semejanza: Teorema tales
jcremiro
 
Html 5: elementos para mejorar la aparienci
Html 5: elementos para mejorar la aparienciHtml 5: elementos para mejorar la aparienci
Html 5: elementos para mejorar la aparienci
jcremiro
 
Html 5 navegación enlaces
Html 5 navegación enlacesHtml 5 navegación enlaces
Html 5 navegación enlaces
jcremiro
 
Java script estructuras_datos
Java script estructuras_datosJava script estructuras_datos
Java script estructuras_datos
jcremiro
 
Css: elementos básicos
Css: elementos básicosCss: elementos básicos
Css: elementos básicos
jcremiro
 
Estadística
EstadísticaEstadística
Estadística
jcremiro
 
Numeros decimales
Numeros decimalesNumeros decimales
Numeros decimales
jcremiro
 
Razones trigonométricas
Razones trigonométricasRazones trigonométricas
Razones trigonométricas
jcremiro
 
Proporcionalidad
ProporcionalidadProporcionalidad
Proporcionalidad
jcremiro
 
Numeros reales
Numeros realesNumeros reales
Numeros reales
jcremiro
 
Matrices operaciones
Matrices operacionesMatrices operaciones
Matrices operaciones
jcremiro
 
Ecuaciones
EcuacionesEcuaciones
Ecuaciones
jcremiro
 
Determinantes
DeterminantesDeterminantes
Determinantes
jcremiro
 
Html 5 imágenes y vídeo
Html 5 imágenes y vídeoHtml 5 imágenes y vídeo
Html 5 imágenes y vídeo
jcremiro
 
Progresiones aritméticas y geométricas
Progresiones aritméticas y geométricasProgresiones aritméticas y geométricas
Progresiones aritméticas y geométricas
jcremiro
 
Matrices: sistemas lineales
Matrices: sistemas linealesMatrices: sistemas lineales
Matrices: sistemas lineales
jcremiro
 
Derivadas: aplicaciones
Derivadas: aplicacionesDerivadas: aplicaciones
Derivadas: aplicaciones
jcremiro
 
Derivadas
DerivadasDerivadas
Derivadas
jcremiro
 

Destacado (20)

Java script
Java scriptJava script
Java script
 
Numeros racionales
Numeros racionalesNumeros racionales
Numeros racionales
 
Semejanza: Teorema tales
Semejanza: Teorema talesSemejanza: Teorema tales
Semejanza: Teorema tales
 
Html 5: elementos para mejorar la aparienci
Html 5: elementos para mejorar la aparienciHtml 5: elementos para mejorar la aparienci
Html 5: elementos para mejorar la aparienci
 
Html 5 navegación enlaces
Html 5 navegación enlacesHtml 5 navegación enlaces
Html 5 navegación enlaces
 
Java script estructuras_datos
Java script estructuras_datosJava script estructuras_datos
Java script estructuras_datos
 
Css: elementos básicos
Css: elementos básicosCss: elementos básicos
Css: elementos básicos
 
Estadística
EstadísticaEstadística
Estadística
 
Numeros decimales
Numeros decimalesNumeros decimales
Numeros decimales
 
Razones trigonométricas
Razones trigonométricasRazones trigonométricas
Razones trigonométricas
 
Proporcionalidad
ProporcionalidadProporcionalidad
Proporcionalidad
 
Numeros reales
Numeros realesNumeros reales
Numeros reales
 
Matrices operaciones
Matrices operacionesMatrices operaciones
Matrices operaciones
 
Ecuaciones
EcuacionesEcuaciones
Ecuaciones
 
Determinantes
DeterminantesDeterminantes
Determinantes
 
Html 5 imágenes y vídeo
Html 5 imágenes y vídeoHtml 5 imágenes y vídeo
Html 5 imágenes y vídeo
 
Progresiones aritméticas y geométricas
Progresiones aritméticas y geométricasProgresiones aritméticas y geométricas
Progresiones aritméticas y geométricas
 
Matrices: sistemas lineales
Matrices: sistemas linealesMatrices: sistemas lineales
Matrices: sistemas lineales
 
Derivadas: aplicaciones
Derivadas: aplicacionesDerivadas: aplicaciones
Derivadas: aplicaciones
 
Derivadas
DerivadasDerivadas
Derivadas
 

Similar a JavaScript funciones

Clase 5 funciones en javaScript
Clase 5 funciones en javaScriptClase 5 funciones en javaScript
Clase 5 funciones en javaScript
José Ricardo Tillero Giménez
 
Funciones
FuncionesFunciones
Funcionesadark
 
JavaScript.pptx
JavaScript.pptxJavaScript.pptx
JavaScript.pptx
AracelyCaiza1
 
Presen iii 26 funciones
Presen iii  26 funcionesPresen iii  26 funciones
Presen iii 26 funcionesRafaeloRivas
 
11funciones 1231096290787715-2
11funciones 1231096290787715-211funciones 1231096290787715-2
11funciones 1231096290787715-2
Jose Rodrigo Morera Torres
 
FUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE CFUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE C
flaquita_dany
 
Capítulo 6 funciones y procedimiento
Capítulo 6 funciones y procedimientoCapítulo 6 funciones y procedimiento
Capítulo 6 funciones y procedimientoEnAutomático
 
Funciones en C
Funciones en CFunciones en C
Funciones en C
Ronny Parra
 
FUNCIONES LENGUAJE C
FUNCIONES LENGUAJE CFUNCIONES LENGUAJE C
FUNCIONES LENGUAJE C
Gustavo Salazar Loor
 
Funciones lenguaje c modulo4
Funciones lenguaje c modulo4Funciones lenguaje c modulo4
Funciones lenguaje c modulo4
flaquita_dany
 
OPERADORES ARITMETICOS
OPERADORES ARITMETICOSOPERADORES ARITMETICOS
OPERADORES ARITMETICOS
Fernando Solis
 
Funciones
FuncionesFunciones
Javacript: expresiones e instrucciones
Javacript: expresiones e instruccionesJavacript: expresiones e instrucciones
Javacript: expresiones e instrucciones
jcremiro
 
Tema 7 www.fresymetal.com
Tema 7 www.fresymetal.comTema 7 www.fresymetal.com
Tema 7 www.fresymetal.com
FresyMetal
 

Similar a JavaScript funciones (20)

Clase 5 funciones en javaScript
Clase 5 funciones en javaScriptClase 5 funciones en javaScript
Clase 5 funciones en javaScript
 
Funciones
FuncionesFunciones
Funciones
 
Funcionesenlenguaje c
Funcionesenlenguaje cFuncionesenlenguaje c
Funcionesenlenguaje c
 
JavaScript.pptx
JavaScript.pptxJavaScript.pptx
JavaScript.pptx
 
Funciones en Lenguaje C
Funciones en Lenguaje CFunciones en Lenguaje C
Funciones en Lenguaje C
 
Presentacion capitulo 6
Presentacion capitulo 6Presentacion capitulo 6
Presentacion capitulo 6
 
11 Funciones
11 Funciones11 Funciones
11 Funciones
 
Presen iii 26 funciones
Presen iii  26 funcionesPresen iii  26 funciones
Presen iii 26 funciones
 
11funciones 1231096290787715-2
11funciones 1231096290787715-211funciones 1231096290787715-2
11funciones 1231096290787715-2
 
FUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE CFUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE C
 
Capítulo 6 funciones y procedimiento
Capítulo 6 funciones y procedimientoCapítulo 6 funciones y procedimiento
Capítulo 6 funciones y procedimiento
 
Funciones en c++
Funciones en c++Funciones en c++
Funciones en c++
 
Funciones en C
Funciones en CFunciones en C
Funciones en C
 
FUNCIONES LENGUAJE C
FUNCIONES LENGUAJE CFUNCIONES LENGUAJE C
FUNCIONES LENGUAJE C
 
Funciones lenguaje c modulo4
Funciones lenguaje c modulo4Funciones lenguaje c modulo4
Funciones lenguaje c modulo4
 
OPERADORES ARITMETICOS
OPERADORES ARITMETICOSOPERADORES ARITMETICOS
OPERADORES ARITMETICOS
 
Funciones
FuncionesFunciones
Funciones
 
07 funciones
07 funciones07 funciones
07 funciones
 
Javacript: expresiones e instrucciones
Javacript: expresiones e instruccionesJavacript: expresiones e instrucciones
Javacript: expresiones e instrucciones
 
Tema 7 www.fresymetal.com
Tema 7 www.fresymetal.comTema 7 www.fresymetal.com
Tema 7 www.fresymetal.com
 

Más de jcremiro

Sucesiones: conceptos elementales
Sucesiones: conceptos elementalesSucesiones: conceptos elementales
Sucesiones: conceptos elementales
jcremiro
 
Combinatoria
CombinatoriaCombinatoria
Combinatoria
jcremiro
 
Funciones: conceptos básicos
Funciones: conceptos básicosFunciones: conceptos básicos
Funciones: conceptos básicos
jcremiro
 
Vectores en el epacio
Vectores en el epacioVectores en el epacio
Vectores en el epacio
jcremiro
 
Cónicas
CónicasCónicas
Cónicas
jcremiro
 
Geometría analítica plana
Geometría analítica planaGeometría analítica plana
Geometría analítica plana
jcremiro
 
Cálculo vectorial en el plano
Cálculo vectorial en el planoCálculo vectorial en el plano
Cálculo vectorial en el plano
jcremiro
 
Numeros complejos
Numeros complejosNumeros complejos
Numeros complejos
jcremiro
 
Razones trigonométricas
Razones trigonométricasRazones trigonométricas
Razones trigonométricas
jcremiro
 
Probabilidad
ProbabilidadProbabilidad
Probabilidad
jcremiro
 
Cuerpos geometricos
Cuerpos geometricosCuerpos geometricos
Cuerpos geometricos
jcremiro
 
Vectores
VectoresVectores
Vectores
jcremiro
 
Semejanza teorema tales
Semejanza teorema talesSemejanza teorema tales
Semejanza teorema tales
jcremiro
 
Inecuaciones. Programación lineal
Inecuaciones. Programación linealInecuaciones. Programación lineal
Inecuaciones. Programación lineal
jcremiro
 
Teoria de conjuntos
Teoria de conjuntosTeoria de conjuntos
Teoria de conjuntos
jcremiro
 
Elementos básicos de geometría
Elementos básicos de geometríaElementos básicos de geometría
Elementos básicos de geometría
jcremiro
 
Figuras planas
Figuras planasFiguras planas
Figuras planas
jcremiro
 
Numeros enteros
Numeros enterosNumeros enteros
Numeros enteros
jcremiro
 
Polinomios
PolinomiosPolinomios
Polinomios
jcremiro
 
Divisibiliad
DivisibiliadDivisibiliad
Divisibiliad
jcremiro
 

Más de jcremiro (20)

Sucesiones: conceptos elementales
Sucesiones: conceptos elementalesSucesiones: conceptos elementales
Sucesiones: conceptos elementales
 
Combinatoria
CombinatoriaCombinatoria
Combinatoria
 
Funciones: conceptos básicos
Funciones: conceptos básicosFunciones: conceptos básicos
Funciones: conceptos básicos
 
Vectores en el epacio
Vectores en el epacioVectores en el epacio
Vectores en el epacio
 
Cónicas
CónicasCónicas
Cónicas
 
Geometría analítica plana
Geometría analítica planaGeometría analítica plana
Geometría analítica plana
 
Cálculo vectorial en el plano
Cálculo vectorial en el planoCálculo vectorial en el plano
Cálculo vectorial en el plano
 
Numeros complejos
Numeros complejosNumeros complejos
Numeros complejos
 
Razones trigonométricas
Razones trigonométricasRazones trigonométricas
Razones trigonométricas
 
Probabilidad
ProbabilidadProbabilidad
Probabilidad
 
Cuerpos geometricos
Cuerpos geometricosCuerpos geometricos
Cuerpos geometricos
 
Vectores
VectoresVectores
Vectores
 
Semejanza teorema tales
Semejanza teorema talesSemejanza teorema tales
Semejanza teorema tales
 
Inecuaciones. Programación lineal
Inecuaciones. Programación linealInecuaciones. Programación lineal
Inecuaciones. Programación lineal
 
Teoria de conjuntos
Teoria de conjuntosTeoria de conjuntos
Teoria de conjuntos
 
Elementos básicos de geometría
Elementos básicos de geometríaElementos básicos de geometría
Elementos básicos de geometría
 
Figuras planas
Figuras planasFiguras planas
Figuras planas
 
Numeros enteros
Numeros enterosNumeros enteros
Numeros enteros
 
Polinomios
PolinomiosPolinomios
Polinomios
 
Divisibiliad
DivisibiliadDivisibiliad
Divisibiliad
 

Último

Conocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del ArrabalConocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del Arrabal
Profes de Relideleón Apellidos
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
20minutos
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
JAVIER SOLIS NOYOLA
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Monseespinoza6
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
cintiat3400
 
Fase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometricoFase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometrico
YasneidyGonzalez
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
Alejandrino Halire Ccahuana
 
Fase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcionalFase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcional
YasneidyGonzalez
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
El Fortí
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
LorenaCovarrubias12
 
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCIONCAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
MasielPMP
 
Portafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPNPortafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPN
jmorales40
 
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdfHABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
DIANADIAZSILVA1
 
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIACONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
BetzabePecheSalcedo1
 
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernándezPRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
Ruben53283
 
El Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundoEl Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundo
SandraBenitez52
 
Fase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría AnalíticaFase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría Analítica
YasneidyGonzalez
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
auxsoporte
 
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptxSemana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
LorenaCovarrubias12
 
corpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdfcorpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdf
YolandaRodriguezChin
 

Último (20)

Conocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del ArrabalConocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del Arrabal
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
 
Fase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometricoFase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometrico
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
 
Fase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcionalFase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcional
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
 
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCIONCAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
 
Portafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPNPortafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPN
 
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdfHABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
 
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIACONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
 
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernándezPRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
 
El Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundoEl Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundo
 
Fase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría AnalíticaFase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría Analítica
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
 
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptxSemana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
 
corpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdfcorpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdf
 

JavaScript funciones

  • 2. Funciones definidas por el usuario • JavaScript contiene funciones ya construidas (alert, prompt ). • JavaScript permite definir funciones e invocarlas posteriormente. • Una función agrupa normalmente código que se ejecuta con un fin determinado.
  • 3. Definición de funciones • La definición de una función comienza con la palabra reservada function • A continuación, un identificador y entre paréntesis los parámetros que admite la función. • El cuerpo de la función estará delimitado por llaves. • La palabra reservada return para devolver un valor.
  • 4. Ejemplo: declaración de una función function valor_absoluto (numero){ if (numero < 0){ numero = - numero; } return numero } Nombre de la función Parámetro Cuerpo de la función function nombre_de_la_función (lista_de_parámetros){ lista_de_instrucciones } Sintaxis
  • 5. Invocación de funciones • Una función puede ser invocada en cualquier lugar de un documento HTML donde se pueda incluir código JavaScript. • Antes de ejecutar ninguna instrucción, el navegador espera a cargar todas las definiciones de funciones. • Es posible invocar una función aún cuando no se haya producido su carga.
  • 6. Ejemplos: invocación de funciones function mcd ( x, y){ var resto=0; while ( x % y != 0 ){ resto= x % y; x = y; y = resto; } return y; } var aux= mcd (34, 12); // la variable aux tendrá el valor 2 var aux = mcd (15,aux); // la variable aux tendrá el valor 1 var aux = mcd (25,45) * 4; // la variable aux tendrá el valor 20 Declaración Invocación
  • 7. Ámbito de las variables • El ámbito de una variable definida en una función es el cuerpo de la función. • Si dentro de una función no se ha definido una función con el mismo identificador de una variable que se encuentra fuera de la función, la variable externa puede utilizarse dentro de la función.
  • 8. Ejemplo: ámbito de una variable var x = 0; var z = 3; var m = 1; function abracadabra ( x, y){ var z = 0; while ( x > y ){ x = x - 1; y = y + 1; m = m + 1; } return y; } Los identificadores se refieren a los parámetros de la función y a la variable definida dentro de la función (z) Se refiere a la variable local, pues no se ha definido ninguna variable local con el mismo identificador.
  • 9. La pila de llamadas • Cuando se invoca a una función, el control de la ejecución se transfiere a la función. • Se almacena el estado el programa, para posteriormente a la finalización de la función devolver el control a aquel (desapilando los valores antes almacenados) • Este comportamiento permite la recursión.
  • 10. Argumentos • En la declaración de una función se incluyen los argumentos con los que se invocará. • Si se produce la invocación con mas argumentos de los que hay en la cabecera, los que sobren se ingnorarán. • Es posible que una función pueda “capturar” los argumentos con los que fue invocada.
  • 11. Diseño de funciones • Las funciones permiten: – Agrupar código que se repite una y otra vez. – Crear una función en el sentido matemático – Recursión
  • 12. Ejemplo I function mcd ( x, y){ var resto=0; while ( x % y != 0 ){ resto= x % y; x = y; y = resto; } return y; } Esta función permite calcular el máximo común divisor de dos números, utilizando el algoritmo de Euclides Procedimiento: Dividimos un número entre otro, si la división es exacta (el resto es 0), el máximo común divisor es el divisor, en otro caso (el resto es distinto de cero), cambiar el dividendo por el divisor y el divisor por el dividendo, volver hacer el proceso hasta que el resto sea cero.
  • 13. Ejemplo II function factorial (numero){ var resultado = 1; while (numero != 0){ resultado = resultado * numero; numero = numero - 1; } return resultado; } Función iterativa function factorial (numero){ var resultado = 1; if (numero == 1){ return 1; } else{ return numero*factorial (numero - 1); } } Función recursiva Cálculo del factorial de un número
  • 14. Ejemplo III function es_primo (numero){ var cota = Math.floor(numero / 2); var candidato = 2; var primo = true; while (primo && candidato <= cota){ if (numero % candidato == 0){ primo = false; } candidato = candidato + 1; } return primo; } Esta función devuelve verdadero si el número es primo, y falso en otro caso
  • 15. Ejemplo: invocación de una función function es_primo (numero){ var cota = Math.floor(numero / 2); var candidato = 2; var primo = true; while (primo && candidato <= cota){ if (numero % candidato == 0){ primo = false; } candidato = candidato + 1; } return primo; } var resultado = ''; for (i=2; i <= 1000; i++){ if (es_primo(i)){ resultado = resultado + ' - ' + i; } } alert(resultado); Este código invoca a la función es_primo para mostrar los números primos que se encuentran entre 2 y 1.000.