SlideShare una empresa de Scribd logo
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE
eval(cadena [,objeto ])
• Cadena: Una cadena que representa una expresión, sentencia o secuencia de
sentencias en JavaScript. La expresión puede incluir variables y propiedades de objetos
existentes.
• Objeto: Un argumento opcional; si se especifica, la evaluación se restringe al contexto
del objeto especificado.
Ejemplos:
1. eval(new String("2 + 2")); // devuelve un objeto String que contiene "2 + 2”
2. eval("2 + 2"); // devuelve 4
3. var expresion = new String("2 + 2");
eval(expresion.toString());
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE
parseInt(cadena, base);
• Cadena: Una cadena que representa el valor que se desea convertir.
• Base: Un entero que representa la base de la mencionada cadena.
Si se encuentra con un carácter que no se corresponde con la base especificada
devuelve NaN.
Si no se especifica la base o se especifica como 0, JavaScript asume lo siguiente:
• Si el parámetro cadena comienza por "0x", la base es 16 (hexadecimal).
• Si el parámetro cadena comienza por "0", la base es de 8 (octal). Esta
característica está desaconsejada.
• Si el parámetro cadena comienza por cualquier otro valor, la base es 10
(decimal).
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE
Ejemplos:
1. parseInt("F", 16); //Devuelve 15
2. parseInt("17", 8); ; //Devuelve 15
3. parseInt("15", 10); ; //Devuelve 15
4. parseInt(15.99, 10); ; //Devuelve 15
5. parseInt("Hello", 8); // No es un número en absoluto. Devuelve NaN
6. parseInt("0x7", 10); // No es de base 10. Devuelve NaN
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE
parseFloat(cadena);
• Cadena: Una cadena que representa el valor que se desea convertir.
Si el primer carácter no se puede convertir a número, devuelve NaN.
Ejemplos:
1. parseFloat("3.14"); //Devuelve 3,14
2. parseFloat("314e-2"); //Devuelve 3,14
3. parseFloat("0.0314E+2"); //Devuelve 3,14
4. v var cadena = "3.14"; parseFloat(cadena); //Devuelve 3,14
5. parseFloat("3.14más caracteres no dígitos"); //Devuelve 3,14
6. parseFloat("FF2"); //Devuelve NaN
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE
isNaN(valor)
• Valor: El valor que se desea evaluar.
IsNaN quiere decir: Is Not a Number.
Intenta convertir el argumento a número; si no puede, devuelve true; en caso contrario
false.
Ejemplos:
1. isNaN(NaN) //devuelve true
2. isNaN("string") //devuelve true
3. isNaN("12") //devuelve false
4. isNaN(12) //devuelve false
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE
isFinite(numero)
• Valor: El valor que se desea evaluar.
Si el argumento es NaN, infinito positivo o negativo devuelve false; en caso contrario true.
Ejemplos:
1. isFinite(Infinity); // falso
2. isFinite(NaN); // falso
3. isFinite(-Inifinity); //
4. falso isFinite(0); // verdadero
5. isFinite(2e64); // verdadero
6. isFinite("0"); // verdadero, hubiera sido falso en el caso de usar Number.isFinite("0") que es
mas robusta.
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE
Number(objeto) / String(objeto)
• Objeto: el objeto que quiere pasarse a Number o String.
Convierten el objeto pasado por parámetro a Number o String.
Ejemplo:
var hoy = new Date();
document.write(String(hoy));
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.2. FUNCIONES DEFINIDAS POR EL USUARIO
Son un conjunto de sentencias que realizan una tarea específica.
Conviene definirlas en el head, y luego llamarlas desde cualquier punto de la web con un script.
function nombre([argumentos]) {
//Sentencias
//[return dato]
}
• Function: palabra reservada para definir una función.
• Nombre: palabra que determina el nombre de la función.
• Argumentos (opcional): parámetros que pueden utilizarse internamente en la función.
• Return dato: la función puede o no devolver un valor, que estaría indicado después de la
palabra reservada return.
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.2. FUNCIONES DEFINIDAS POR EL USUARIO
Ejemplos:
1. function mifuncion(cadena) {
document.write("<P><BLINK>" + cadena + "</BLINK>")
}
2. function resta(a,b) {
return a-b
}
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.2. FUNCIONES DEFINIDAS POR EL USUARIO
EJERCICIO: u4e1_funciones
• Crea un archivo u4e1_funciones.js en el que introduzcas todas las funciones
creadas en el proyecto de la unidad 2 (imc, fcm, categoria, horario).
• Crea un html donde incluyas el archivo anterior y cuatro enlaces. Cada uno
(mediante el método onClick) ejecutará una función.
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Arrays:
Colección de valores homogénea o no, y ordenada.
Crear un array usando el constructor del objeto Array:
miArray = new Array(“Hola”,30, 3.14); //Array de elemenetos heterogéneos
miArray2 = new Array(“Viento”, “Lluvia”, “Fuego”, “Tierra”); //Array de elementos
homogéneos
miArray3 = new Array(5); //Array vacío con 5 elementos
Crear un array usando corchetes:
var frutas = [”Manzana", "Platano"];
console.log(frutas.length); // 2
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Arrays:
Colección de valores homogénea o no, y ordenada.
Acceder a un elemento de un array:
var primero = frutas[0]; // Manzana
var ultimo = frutas[frutas.length - 1]; // Platano
Recorrer un array:
frutas.forEach(function (item, index, array) {
console.log(item, index);
});
// Manzana 0
// Platano 1
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Propiedades
LA U R A F O LG A D O G A LA CH E
Array
Propiedad Descripción
length Devuelve la longitud del array
prototype Permite agregar al objeto Array las propiedades que queramos.
Ejemplo de prototype:
Array.protoype.descriptor = null;
dias = new Array ('lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes');
dias.descriptor = "Dias laborables de la semana";
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Métodos
LA U R A F O LG A D O G A LA CH E
Array
Método Descripción
valueOf(elemento) Es el método por defecto de un objeto array y lo devuelve.
indexOf(elemento) Devuelve la primera posición en la que se encuentra un elemento.
push(elemento) Añade un elemento al final del array (aumenta su longitud).
pop()
Elimina un elemento al final del array y lo devuelve (disminuye su
longitud)
unshift(elemento) Añade un elemento al principio del array (aumenta su longitud)
shift()
Elimina el primer elemento del array y lo devuelve (disminuye su
longitud).
reverse() Modifica el array colocando los elementos en orden inverso.
sort() Ordena los elementos del array según orden lexicográfico.
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Métodos
LA U R A F O LG A D O G A LA CH E
Array
Método Descripción
concat(elemento/s) Concatena elementos de varios arrays.
join(separador)
Une todos los elementos en una cadena de texto (lo contrario
que el split) unidos por un separador.
slice(inicio,fin)
Toma elementos de un array (sin modificar el original) desde
la posición inicio a fin.
splice(inicio,numer
o_elementos,[reem
plazo])
Elimina un número de elementos de un array empezando por
la posición inicio. SI tiene el tercer parámetro, además, los
sustituye por él.
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Partimos del array frutas[“Manzana”, “Platano”];
Obtener la posición de un elemento del array.
var posicion= frutas.valueOf(”Platano");
// Devuelve 1, porque plátano es la 2ª posición, pero empezamos por el 0.
Añadir al final del array:
var nuevoTamano = frutas.push("Naranja");
// ["Manzana", "Platano", "Naranja"] y devuelve el tamaño del array
Eliminar del final del array:
var ultimo = frutas.pop(); // borra Naranja (del final) y lo devuelve
// ["Manzana", "Platano"];
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Añadir al principio del array:
var nuevoTamano = frutas.unshift("Fresa") // añade al principio y devuelve el
tamaño
// ["Fresa", “Manzana”, "Platano"];
Eliminar del principio del array:
var primero = frutas.shift(); // borra Fresa(del principio) y lo devuelve
// [“Manzana”, "Platano"];
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Ordena según el orden lexicográfico:
var frutas=[“Manzana”,”Platano”,”Kiwi”,”Higo”,”Pera”,”Ciruela”];
var frutasOrdenado = frutas.sort ();
//frutas=[“Ciruela”, “Higo”, “Kiwi”, “Manzana”, “Pera”, “Platano”]
//Devuelve el array ordenado
Invierte el orden de los elementos del array:
var frutas=[“Manzana”,”Platano”,”Kiwi”,”Higo”,”Pera”,”Ciruela”];
var frutasReves = frutas.reverse();
//frutas=[“Ciruela”, “Pera”, “Higo”, “Kiwi”, “Platano”, “Manzana”
//Devuelve el array ordenado del revés
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Concatenar dos arrays:
var frutas1 = [”Manzana", "Platano"];
var frutas2 = [“Ciruela”];
frutas1.concat[“Kiwi”,”Higo”,”Pera”];
//frutas1=[“Manzana”,”Platano”,”Kiwi”,”Higo”,”Pera”];
frutas1.concat(frutas2);
//frutas1=[“Manzana”,”Platano”,”Kiwi”,”Higo”,”Pera”,”Ciruela”];
Unir los elementos de un array en una cadena:
var frutas=[“Manzana”,”Platano”,”Kiwi”];
var cadena = frutas.join(“:”);
// cadena = “Manzana:Platano:Kiwi”;
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Tomar elementos según su posición (inicial y final):
var frutas=[“Manzana”,”Platano”,”Kiwi”, “Pera”,”Higo”];
var seleccion = frutas.slice(0, 1); // seleccion = [”Manzana”,”Platano"]
var ultimos = frutas.slice(--2); // seleccion = [”Pera”,”Higo"]
Eliminar elementos según su posición (inicio, número de elementos):
var frutas=[“Manzana”,”Platano”,”Kiwi”, “Pera”,”Higo”];
var eliminado= frutas.splice(2, 2); // frutas = [”Manzana”,”Higo"]
var ultimos = frutas.splice(-1);// frutas = [“Manzana”]
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
EJERCICIO: u4e2_arrays
• Vamos a gestionar una lista de países haciendo uso de Arrays. Para ello necesitarás
crear un archivo arrays.js que incluya las siguientes funciones:
• Mostrar el número de elementos del array.
• Mostrar todos los elementos del array.
• Muestra los elementos del array en sentido inverso.
• Muestra los elementos del array ordenados alfabéticamente (pero no los ordena).
• Añadir un elemento al principio del array.
• Añadir un elemento al final del array.
• Borrar un elemento al principio del array (y decir cuál se ha borrado).
• Borrar un elemento al final del array (y decir cuál se ha borrado).
• Muestra el elemento que se encuentra en una posición que el usuario indica.
• Muestra la posición en la que se encuentra un elemento que le indica el usuario.
• Muestra los elementos que se encuentran en un intervalo que el usuario indica.
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
EJERCICIO: u4e2_arrays (continuación):
• Ten en cuenta que el array será una variable global y que se pasará por parámetro
en todas las funciones.
• Cuando el usuario cargue la página, se cargará un prompt donde se mostrarán (en
el prompt, no en la página) las opciones:
• Mostrar número de países.
• Mostrar listado de países (y le preguntará si quiere mostrarlos en el orden que
se encuentran en el array, del revés u ordenados alfabéticamente).
• Mostrar un intervalo de países (y le pedirá que introduzca el intervalo en
formato inicio-fin; luego deberás extraer el valor inicio y fin).
• Añadir un país (y le preguntará si quiere añadir al principio o al final).
• Borrar un país (y le preguntará si quiere borrar al principio o al final).
• Consultar un país (y le preguntará si quiere consultar por posición o por
nombre).
• Todas las operaciones que se realicen se irán mostrando en la página con su título.
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Arrays multidimensionales:
Son arrays que almacenan en cadaposición otros arrays asuvez. Es posiblecrear arrays bidimensionales,
tridimensionales,etc.
Crear un arraybidimensional mediante otros arrays:
var datos =new Array();
datos [0] = new Array (“Programacion”, “1DAW”, 10);
datos[1] = new Array (“DWEC”, “2DAW”, 9);
datos[2] = new Array (“DIW”, “2DAW”, 5);
Crear un arraybidimensional usandocorchetes:
var datos =[
[“Programacion”, “1DAW”, 10],
[“DWEC”, “2DAW”, 9],
[“DIW”, “2DAW”, 5]
];
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.3. ARRAYS
Acceder a una posición de un array multidimensional:
Tenemos que indicar tantas posiciones como dimensiones (índices) tenga el array:
var elemento = datos [0][2];
Imprimir datos de un array multidimensional:
Utilizamos tantos bucles for anidados como dimensiones (índices) tenga el array.
for (i=0; i<datos.length; i++){
for (j=0; j<datos[i].length; j++){
document.write(“Elemento ”+i+”,”+j+”:“+datos[i][j]);
}
}
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.4. OBJETOS
Objetos:
En Javascript, un objeto es una colección de propiedades que a su vez
pueden ser datos o métodos.
Constructor: es una función especial para crear un objeto. Empieza en mayúscula:
function Coche()
{ //Propiedades y métodos}
Creación de un objeto:
var unCoche = new Coche();
LA U R A F O LG A D O G A LA CH E
Coche()
var cocheazul = new Coche();
var cocherojo = new Coche();
var cocheverde = new Coche();
Definir propiedades del objeto:
secrean en el constructor precedidas por la
palabra this.
“Constructor”sin parámetros:
function Coche()
{
this.marca =“”; //Vacío
this.modelo = “”; //Vacío
this.combustible =“Diesel”;
//Inicializado
this.cantidad=0; //Inicializado
}
“Constructor”con parámetros:
function Coche(marca, modelo, combustible, cantidad)
{
this.marca =marca;
this.modelo = marca;
this.combustible = combustible;
this.cantidad=cantidad;
//Cada propiedad toma los valores recibidos por parámetro
}
Crear un objeto vacío(sin propiedades):
var cocheVacio = new Coche();
Cambiar valores en las propiedades:
cocheVacio.marca = “Seat”;
cocheVacio.modelo = “Ibiza”;
cocheVacio.combustible = “Diesel”;
cocheVacio.cantidad = 40;
Crear un objeto inicializado(conpropiedades):
var miCoche = new Coche(“Seat”, “Ibiza”, “Diesel”, 40);
Acceder a las propiedades:
document.write(“Mi coche es un “+miCoche.marca+”
“+miCoche.modelo);
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.4. OBJETOS
Definir métodos del objeto:
Permiten acceder y modificar las propiedades de
los objetos. Empiezan en minúscula.
Métodoque modificalacantidaddecombustible
function rellenarDeposito(litros )
{
this.cantidad = litros;
}
Referenciaal métodofuera del objeto
(¡norecomendado!)
function Coche(marca, modelo, combustible, cantidad)
{
//Propiedades
this.marca =marca;
this.modelo = marca;
this.combustible = combustible;
//Métodos
this.rellenardeposito = rellenardeposito;
}
Referenciaal métododentrodel objeto
function Coche(marca, modelo, combustible, cantidad)
{
//Propiedades
this.marca =marca;
this.modelo = marca;
this.combustible = combustible;
//Métodos
this.rellenardeposito = function (litros)
{
this.cantidad = litros;
}
}
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.4. OBJETOS
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.4. OBJETOS
Objetos literales:
Un literal es un valor fijo. Está formado por parejas de tipo nombre:valor.
Ejemplo:
coche {marca:”Ibiza”,modelo:”Seat”,combustible:”diesel”,cantidad:40};
Ejemplo equivalente:
var coche = new Object();
coche.marca=”Ibiza”;
coche.modelo=”Seat”;
coche.combustible=”diesel”;
coche.cantidad=40;
Acceso:
coche.marca;
coche[“marca”];
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.4. OBJETOS
EJERCICIO: u4e4_objetos:
• Necesitamos almacenar en un programatodos los discos demúsicaquetenemos en casa. Ahoraquesabemos
crear nuestros propios objetos es el mejor modode guardar estainformación.
• Crea un objeto“disco”que almacenelasiguienteinformación:
• Nombredel disco.
• Grupode músicaocantante.
• Añode publicación.
• Tipode música(podráser “rock”, “pop”, “punk”o “indie”);
• Localización: almacenaráun númerodeestantería.
• Prestado: almacenaráun valor booleano. Por defectoseráfalse.
• Además tendrálos siguientesmétodos:
• Un “constructor”sin parámetros (las4 primeras propiedades serán cadenas vacías, lalocalización será0 por
defectoy prestadoestará a false).
• Un método quepermitaincluir las cincoprimeras propiedades; lapropiedad prestadoseguiráa false.
• Un método quepermitirácambiar el númerodeestanteríaen lalocalización.
• Un método quepermitirácambiar la propiedad Prestado.
• Un método quemuestretodala informacióndeun disco.
• Guardatodo el códigoen un archivollamadodisco.js
LA U R A F O LG A D O G A LA CH E
4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS
DEFINIDOS POR EL USUARIO
4.4. OBJETOS
EJERCICIO: u4e4_objetos (continuación):
• Carga en tu página el archivo de arrays que hicimos en la práctica anterior.
• Crea un array vacío para almacenar los discos.
• Cuando el usuario cargue la página, se cargarán las opciones:
• Mostrar número de discos.
• Mostrar listado de discos(y le preguntará si quiere mostrarlos en el orden que se
encuentran en el array, del revés u ordenados alfabéticamente).
• Mostrar un intervalo de discos(y le pedirá que introduzca el intervalo en formato
inicio-fin; luego deberás extraer el valor inicio y fin).
• Añadir un disco (y le preguntará si quiere añadir al principio o al final).
• Borrar un disco (y le preguntará si quiere borrar al principio o al final).
• Consultar un disco (y le preguntará si quiere consultar por posición o por nombre).
• Todas las operaciones que se realicen se irán mostrando en la página con su título.
• REUTILIZA EL CÓDIGO DE LA PRÁCTICA ANTERIOR.
LA U R A F O LG A D O G A LA CH E

Más contenido relacionado

La actualidad más candente

Core java complete ppt(note)
Core java  complete  ppt(note)Core java  complete  ppt(note)
Core java complete ppt(note)
arvind pandey
 
Java script
Java scriptJava script
Java script
Jay Patel
 
Ejercicios resueltos de_pl-sql
Ejercicios resueltos de_pl-sqlEjercicios resueltos de_pl-sql
Ejercicios resueltos de_pl-sql
MaraMagdalenaBlancoR
 
Threads concept in java
Threads concept in javaThreads concept in java
Threads concept in java
Muthukumaran Subramanian
 
JavaScript
JavaScriptJavaScript
JavaScript JQUERY AJAX
JavaScript JQUERY AJAXJavaScript JQUERY AJAX
JavaScript JQUERY AJAX
Makarand Bhatambarekar
 
Java script
Java scriptJava script
Java script
Shyam Khant
 
(Meta1.2) problemas de algoritmos, diagramas de flujo y pseudocodigos
(Meta1.2) problemas de algoritmos, diagramas de flujo y pseudocodigos (Meta1.2) problemas de algoritmos, diagramas de flujo y pseudocodigos
(Meta1.2) problemas de algoritmos, diagramas de flujo y pseudocodigos Eli Diaz
 
Spring data jpa
Spring data jpaSpring data jpa
Spring data jpa
Jeevesh Pandey
 
Java script(diapositivas)
Java script(diapositivas) Java script(diapositivas)
Java script(diapositivas) Roberto Mejia
 
JavaScript guide 2020 Learn JavaScript
JavaScript guide 2020 Learn JavaScriptJavaScript guide 2020 Learn JavaScript
JavaScript guide 2020 Learn JavaScript
Laurence Svekis ✔
 
An Introduction to the DOM
An Introduction to the DOMAn Introduction to the DOM
An Introduction to the DOM
Mindy McAdams
 
Programacion orientada a objetos en javascript
Programacion orientada a objetos en javascriptProgramacion orientada a objetos en javascript
Programacion orientada a objetos en javascript
Robert Moreira
 
S1-Fundamentos POO
S1-Fundamentos POOS1-Fundamentos POO
S1-Fundamentos POO
Luis Fernando Aguas Bucheli
 
Document Object Model (DOM)
Document Object Model (DOM)Document Object Model (DOM)
Document Object Model (DOM)
GOPAL BASAK
 
Collections in Java Notes
Collections in Java NotesCollections in Java Notes
Collections in Java Notes
Shalabh Chaudhary
 
CSS - CSS3
CSS - CSS3CSS - CSS3
Struts Java I I Lecture 8
Struts  Java  I I  Lecture 8Struts  Java  I I  Lecture 8
Struts Java I I Lecture 8patinijava
 

La actualidad más candente (20)

Core java complete ppt(note)
Core java  complete  ppt(note)Core java  complete  ppt(note)
Core java complete ppt(note)
 
Java script
Java scriptJava script
Java script
 
Ejercicios resueltos de_pl-sql
Ejercicios resueltos de_pl-sqlEjercicios resueltos de_pl-sql
Ejercicios resueltos de_pl-sql
 
Threads concept in java
Threads concept in javaThreads concept in java
Threads concept in java
 
Javascript validating form
Javascript validating formJavascript validating form
Javascript validating form
 
JavaScript
JavaScriptJavaScript
JavaScript
 
JavaScript JQUERY AJAX
JavaScript JQUERY AJAXJavaScript JQUERY AJAX
JavaScript JQUERY AJAX
 
Java script
Java scriptJava script
Java script
 
(Meta1.2) problemas de algoritmos, diagramas de flujo y pseudocodigos
(Meta1.2) problemas de algoritmos, diagramas de flujo y pseudocodigos (Meta1.2) problemas de algoritmos, diagramas de flujo y pseudocodigos
(Meta1.2) problemas de algoritmos, diagramas de flujo y pseudocodigos
 
Java script
Java scriptJava script
Java script
 
Spring data jpa
Spring data jpaSpring data jpa
Spring data jpa
 
Java script(diapositivas)
Java script(diapositivas) Java script(diapositivas)
Java script(diapositivas)
 
JavaScript guide 2020 Learn JavaScript
JavaScript guide 2020 Learn JavaScriptJavaScript guide 2020 Learn JavaScript
JavaScript guide 2020 Learn JavaScript
 
An Introduction to the DOM
An Introduction to the DOMAn Introduction to the DOM
An Introduction to the DOM
 
Programacion orientada a objetos en javascript
Programacion orientada a objetos en javascriptProgramacion orientada a objetos en javascript
Programacion orientada a objetos en javascript
 
S1-Fundamentos POO
S1-Fundamentos POOS1-Fundamentos POO
S1-Fundamentos POO
 
Document Object Model (DOM)
Document Object Model (DOM)Document Object Model (DOM)
Document Object Model (DOM)
 
Collections in Java Notes
Collections in Java NotesCollections in Java Notes
Collections in Java Notes
 
CSS - CSS3
CSS - CSS3CSS - CSS3
CSS - CSS3
 
Struts Java I I Lecture 8
Struts  Java  I I  Lecture 8Struts  Java  I I  Lecture 8
Struts Java I I Lecture 8
 

Similar a 4. Programación con arrays, funciones, y objetos definidos por el usuario

Introducción a la Programaciónen Java
Introducción a la Programaciónen JavaIntroducción a la Programaciónen Java
Introducción a la Programaciónen Java
santosisidrorivera
 
Js control de flujo
Js control de flujoJs control de flujo
Js control de flujo
FERNANDOZ9
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetos
BelenMonse
 
Descomposicion funcional parte ii 2013 2
Descomposicion funcional parte ii 2013 2Descomposicion funcional parte ii 2013 2
Descomposicion funcional parte ii 2013 2IngEsquivel
 
Clase 5 funciones en javaScript
Clase 5 funciones en javaScriptClase 5 funciones en javaScript
Clase 5 funciones en javaScript
José Ricardo Tillero Giménez
 
Perl3 subrutinas
Perl3 subrutinasPerl3 subrutinas
Perl3 subrutinas
Alfonso Alba
 
Semana03 prog ii
Semana03 prog iiSemana03 prog ii
Semana03 prog ii
Propia
 
Estructuradatospilasycolas 121106170754-phpapp02
Estructuradatospilasycolas 121106170754-phpapp02Estructuradatospilasycolas 121106170754-phpapp02
Estructuradatospilasycolas 121106170754-phpapp02
Z Karina Hernandez A
 
Funciones con vectores y matrices1
Funciones con vectores y matrices1Funciones con vectores y matrices1
Funciones con vectores y matrices1
Marlene Pallo
 
vectores y matrices
vectores y matricesvectores y matrices
vectores y matrices
Marlene Pallo
 
Unidad_01_01.pdf
Unidad_01_01.pdfUnidad_01_01.pdf
Unidad_01_01.pdf
FelipeFarfn2
 
S6-POO-3.2 Contenedores Especiales
S6-POO-3.2 Contenedores EspecialesS6-POO-3.2 Contenedores Especiales
S6-POO-3.2 Contenedores Especiales
Luis Fernando Aguas Bucheli
 
S6-Contenedores
S6-ContenedoresS6-Contenedores
Enum y ArrayList en Java
Enum y ArrayList en JavaEnum y ArrayList en Java
Enum y ArrayList en JavaJimmy Ramos
 
Semana 4 Javascript funciones y Metodos
Semana 4   Javascript funciones y MetodosSemana 4   Javascript funciones y Metodos
Semana 4 Javascript funciones y Metodos
Richard Eliseo Mendoza Gafaro
 

Similar a 4. Programación con arrays, funciones, y objetos definidos por el usuario (20)

Tutorial de php
Tutorial de phpTutorial de php
Tutorial de php
 
Introducción a la Programaciónen Java
Introducción a la Programaciónen JavaIntroducción a la Programaciónen Java
Introducción a la Programaciónen Java
 
Js control de flujo
Js control de flujoJs control de flujo
Js control de flujo
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetos
 
Descomposicion funcional parte ii 2013 2
Descomposicion funcional parte ii 2013 2Descomposicion funcional parte ii 2013 2
Descomposicion funcional parte ii 2013 2
 
Clase 5 funciones en javaScript
Clase 5 funciones en javaScriptClase 5 funciones en javaScript
Clase 5 funciones en javaScript
 
Perl3 subrutinas
Perl3 subrutinasPerl3 subrutinas
Perl3 subrutinas
 
Modelo Persistente
Modelo PersistenteModelo Persistente
Modelo Persistente
 
Guia poo
Guia pooGuia poo
Guia poo
 
Semana03 prog ii
Semana03 prog iiSemana03 prog ii
Semana03 prog ii
 
Estructura datos pilas y colas
Estructura datos pilas y colasEstructura datos pilas y colas
Estructura datos pilas y colas
 
Estructuradatospilasycolas 121106170754-phpapp02
Estructuradatospilasycolas 121106170754-phpapp02Estructuradatospilasycolas 121106170754-phpapp02
Estructuradatospilasycolas 121106170754-phpapp02
 
Estructura de datos pilas y colas
Estructura de datos pilas y colasEstructura de datos pilas y colas
Estructura de datos pilas y colas
 
Funciones con vectores y matrices1
Funciones con vectores y matrices1Funciones con vectores y matrices1
Funciones con vectores y matrices1
 
vectores y matrices
vectores y matricesvectores y matrices
vectores y matrices
 
Unidad_01_01.pdf
Unidad_01_01.pdfUnidad_01_01.pdf
Unidad_01_01.pdf
 
S6-POO-3.2 Contenedores Especiales
S6-POO-3.2 Contenedores EspecialesS6-POO-3.2 Contenedores Especiales
S6-POO-3.2 Contenedores Especiales
 
S6-Contenedores
S6-ContenedoresS6-Contenedores
S6-Contenedores
 
Enum y ArrayList en Java
Enum y ArrayList en JavaEnum y ArrayList en Java
Enum y ArrayList en Java
 
Semana 4 Javascript funciones y Metodos
Semana 4   Javascript funciones y MetodosSemana 4   Javascript funciones y Metodos
Semana 4 Javascript funciones y Metodos
 

Más de Laura Folgado Galache

Introducción a SASS - Diseño de Interfaces Web (Desarrollo de Aplicaciones Web)
Introducción a SASS - Diseño de Interfaces Web (Desarrollo de Aplicaciones Web)Introducción a SASS - Diseño de Interfaces Web (Desarrollo de Aplicaciones Web)
Introducción a SASS - Diseño de Interfaces Web (Desarrollo de Aplicaciones Web)
Laura Folgado Galache
 
Guías de estilo web - Diseño de interfaces web (Desarrollo de aplicaciones web)
Guías de estilo web - Diseño de interfaces web (Desarrollo de aplicaciones web)Guías de estilo web - Diseño de interfaces web (Desarrollo de aplicaciones web)
Guías de estilo web - Diseño de interfaces web (Desarrollo de aplicaciones web)
Laura Folgado Galache
 
Usabilidad web
Usabilidad webUsabilidad web
Usabilidad web
Laura Folgado Galache
 
Usabilidad móvil
Usabilidad móvilUsabilidad móvil
Usabilidad móvil
Laura Folgado Galache
 
Empaquetado de aplicaciones Java con Netbeans
Empaquetado de aplicaciones Java con NetbeansEmpaquetado de aplicaciones Java con Netbeans
Empaquetado de aplicaciones Java con Netbeans
Laura Folgado Galache
 
Tipos de manuales
Tipos de manualesTipos de manuales
Tipos de manuales
Laura Folgado Galache
 
Ficheros de ayuda en aplicaciones
Ficheros de ayuda en aplicacionesFicheros de ayuda en aplicaciones
Ficheros de ayuda en aplicaciones
Laura Folgado Galache
 
Distribución de aplicaciones
Distribución de aplicacionesDistribución de aplicaciones
Distribución de aplicaciones
Laura Folgado Galache
 
Eventos y listeners en Java Swing
Eventos y listeners en Java SwingEventos y listeners en Java Swing
Eventos y listeners en Java Swing
Laura Folgado Galache
 
Repaso de Java Swing usando Rally-Coach
Repaso de Java Swing usando Rally-CoachRepaso de Java Swing usando Rally-Coach
Repaso de Java Swing usando Rally-Coach
Laura Folgado Galache
 
Imagen digital
Imagen digitalImagen digital
Imagen digital
Laura Folgado Galache
 
Video digital
Video digitalVideo digital
Video digital
Laura Folgado Galache
 
Sonido digital
Sonido digitalSonido digital
Sonido digital
Laura Folgado Galache
 
Blogs - Creación y participación en comunidades virtuales (CFIE Soria)
Blogs - Creación y participación en comunidades virtuales (CFIE Soria)Blogs - Creación y participación en comunidades virtuales (CFIE Soria)
Blogs - Creación y participación en comunidades virtuales (CFIE Soria)
Laura Folgado Galache
 
Taller de redes ssociales (Ávila)
Taller de redes ssociales (Ávila)Taller de redes ssociales (Ávila)
Taller de redes ssociales (Ávila)
Laura Folgado Galache
 
Taller redes sociales (Valladolid)
Taller redes sociales (Valladolid)Taller redes sociales (Valladolid)
Taller redes sociales (Valladolid)
Laura Folgado Galache
 

Más de Laura Folgado Galache (16)

Introducción a SASS - Diseño de Interfaces Web (Desarrollo de Aplicaciones Web)
Introducción a SASS - Diseño de Interfaces Web (Desarrollo de Aplicaciones Web)Introducción a SASS - Diseño de Interfaces Web (Desarrollo de Aplicaciones Web)
Introducción a SASS - Diseño de Interfaces Web (Desarrollo de Aplicaciones Web)
 
Guías de estilo web - Diseño de interfaces web (Desarrollo de aplicaciones web)
Guías de estilo web - Diseño de interfaces web (Desarrollo de aplicaciones web)Guías de estilo web - Diseño de interfaces web (Desarrollo de aplicaciones web)
Guías de estilo web - Diseño de interfaces web (Desarrollo de aplicaciones web)
 
Usabilidad web
Usabilidad webUsabilidad web
Usabilidad web
 
Usabilidad móvil
Usabilidad móvilUsabilidad móvil
Usabilidad móvil
 
Empaquetado de aplicaciones Java con Netbeans
Empaquetado de aplicaciones Java con NetbeansEmpaquetado de aplicaciones Java con Netbeans
Empaquetado de aplicaciones Java con Netbeans
 
Tipos de manuales
Tipos de manualesTipos de manuales
Tipos de manuales
 
Ficheros de ayuda en aplicaciones
Ficheros de ayuda en aplicacionesFicheros de ayuda en aplicaciones
Ficheros de ayuda en aplicaciones
 
Distribución de aplicaciones
Distribución de aplicacionesDistribución de aplicaciones
Distribución de aplicaciones
 
Eventos y listeners en Java Swing
Eventos y listeners en Java SwingEventos y listeners en Java Swing
Eventos y listeners en Java Swing
 
Repaso de Java Swing usando Rally-Coach
Repaso de Java Swing usando Rally-CoachRepaso de Java Swing usando Rally-Coach
Repaso de Java Swing usando Rally-Coach
 
Imagen digital
Imagen digitalImagen digital
Imagen digital
 
Video digital
Video digitalVideo digital
Video digital
 
Sonido digital
Sonido digitalSonido digital
Sonido digital
 
Blogs - Creación y participación en comunidades virtuales (CFIE Soria)
Blogs - Creación y participación en comunidades virtuales (CFIE Soria)Blogs - Creación y participación en comunidades virtuales (CFIE Soria)
Blogs - Creación y participación en comunidades virtuales (CFIE Soria)
 
Taller de redes ssociales (Ávila)
Taller de redes ssociales (Ávila)Taller de redes ssociales (Ávila)
Taller de redes ssociales (Ávila)
 
Taller redes sociales (Valladolid)
Taller redes sociales (Valladolid)Taller redes sociales (Valladolid)
Taller redes sociales (Valladolid)
 

Último

experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
cuentauniversidad34
 
trabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docxtrabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docx
lasocharfuelan123
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
SamuelGampley
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
juanjosebarreiro704
 
infografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de softwareinfografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de software
oscartorres960914
 
Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
Ecaresoft Inc.
 
PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
juanorejuela499
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
nicromante2000
 
Los desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMsLos desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMs
Federico Toledo
 
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA  DE TRABAJO DE CREACION DE TABLAS EN WORDFICHA  DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
RobertSotilLujn
 

Último (10)

experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
 
trabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docxtrabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docx
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
 
infografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de softwareinfografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de software
 
Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
 
PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
 
Los desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMsLos desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMs
 
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA  DE TRABAJO DE CREACION DE TABLAS EN WORDFICHA  DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
 

4. Programación con arrays, funciones, y objetos definidos por el usuario

  • 1.
  • 2. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE eval(cadena [,objeto ]) • Cadena: Una cadena que representa una expresión, sentencia o secuencia de sentencias en JavaScript. La expresión puede incluir variables y propiedades de objetos existentes. • Objeto: Un argumento opcional; si se especifica, la evaluación se restringe al contexto del objeto especificado. Ejemplos: 1. eval(new String("2 + 2")); // devuelve un objeto String que contiene "2 + 2” 2. eval("2 + 2"); // devuelve 4 3. var expresion = new String("2 + 2"); eval(expresion.toString()); LA U R A F O LG A D O G A LA CH E
  • 3. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE parseInt(cadena, base); • Cadena: Una cadena que representa el valor que se desea convertir. • Base: Un entero que representa la base de la mencionada cadena. Si se encuentra con un carácter que no se corresponde con la base especificada devuelve NaN. Si no se especifica la base o se especifica como 0, JavaScript asume lo siguiente: • Si el parámetro cadena comienza por "0x", la base es 16 (hexadecimal). • Si el parámetro cadena comienza por "0", la base es de 8 (octal). Esta característica está desaconsejada. • Si el parámetro cadena comienza por cualquier otro valor, la base es 10 (decimal). LA U R A F O LG A D O G A LA CH E
  • 4. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE Ejemplos: 1. parseInt("F", 16); //Devuelve 15 2. parseInt("17", 8); ; //Devuelve 15 3. parseInt("15", 10); ; //Devuelve 15 4. parseInt(15.99, 10); ; //Devuelve 15 5. parseInt("Hello", 8); // No es un número en absoluto. Devuelve NaN 6. parseInt("0x7", 10); // No es de base 10. Devuelve NaN LA U R A F O LG A D O G A LA CH E
  • 5. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE parseFloat(cadena); • Cadena: Una cadena que representa el valor que se desea convertir. Si el primer carácter no se puede convertir a número, devuelve NaN. Ejemplos: 1. parseFloat("3.14"); //Devuelve 3,14 2. parseFloat("314e-2"); //Devuelve 3,14 3. parseFloat("0.0314E+2"); //Devuelve 3,14 4. v var cadena = "3.14"; parseFloat(cadena); //Devuelve 3,14 5. parseFloat("3.14más caracteres no dígitos"); //Devuelve 3,14 6. parseFloat("FF2"); //Devuelve NaN LA U R A F O LG A D O G A LA CH E
  • 6. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE isNaN(valor) • Valor: El valor que se desea evaluar. IsNaN quiere decir: Is Not a Number. Intenta convertir el argumento a número; si no puede, devuelve true; en caso contrario false. Ejemplos: 1. isNaN(NaN) //devuelve true 2. isNaN("string") //devuelve true 3. isNaN("12") //devuelve false 4. isNaN(12) //devuelve false LA U R A F O LG A D O G A LA CH E
  • 7. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE isFinite(numero) • Valor: El valor que se desea evaluar. Si el argumento es NaN, infinito positivo o negativo devuelve false; en caso contrario true. Ejemplos: 1. isFinite(Infinity); // falso 2. isFinite(NaN); // falso 3. isFinite(-Inifinity); // 4. falso isFinite(0); // verdadero 5. isFinite(2e64); // verdadero 6. isFinite("0"); // verdadero, hubiera sido falso en el caso de usar Number.isFinite("0") que es mas robusta. LA U R A F O LG A D O G A LA CH E
  • 8. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.1. FUNCIONES PREDEFINIDAS DEL LENGUAJE Number(objeto) / String(objeto) • Objeto: el objeto que quiere pasarse a Number o String. Convierten el objeto pasado por parámetro a Number o String. Ejemplo: var hoy = new Date(); document.write(String(hoy)); LA U R A F O LG A D O G A LA CH E
  • 9. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.2. FUNCIONES DEFINIDAS POR EL USUARIO Son un conjunto de sentencias que realizan una tarea específica. Conviene definirlas en el head, y luego llamarlas desde cualquier punto de la web con un script. function nombre([argumentos]) { //Sentencias //[return dato] } • Function: palabra reservada para definir una función. • Nombre: palabra que determina el nombre de la función. • Argumentos (opcional): parámetros que pueden utilizarse internamente en la función. • Return dato: la función puede o no devolver un valor, que estaría indicado después de la palabra reservada return. LA U R A F O LG A D O G A LA CH E
  • 10. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.2. FUNCIONES DEFINIDAS POR EL USUARIO Ejemplos: 1. function mifuncion(cadena) { document.write("<P><BLINK>" + cadena + "</BLINK>") } 2. function resta(a,b) { return a-b } LA U R A F O LG A D O G A LA CH E
  • 11. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.2. FUNCIONES DEFINIDAS POR EL USUARIO EJERCICIO: u4e1_funciones • Crea un archivo u4e1_funciones.js en el que introduzcas todas las funciones creadas en el proyecto de la unidad 2 (imc, fcm, categoria, horario). • Crea un html donde incluyas el archivo anterior y cuatro enlaces. Cada uno (mediante el método onClick) ejecutará una función. LA U R A F O LG A D O G A LA CH E
  • 12. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Arrays: Colección de valores homogénea o no, y ordenada. Crear un array usando el constructor del objeto Array: miArray = new Array(“Hola”,30, 3.14); //Array de elemenetos heterogéneos miArray2 = new Array(“Viento”, “Lluvia”, “Fuego”, “Tierra”); //Array de elementos homogéneos miArray3 = new Array(5); //Array vacío con 5 elementos Crear un array usando corchetes: var frutas = [”Manzana", "Platano"]; console.log(frutas.length); // 2 LA U R A F O LG A D O G A LA CH E
  • 13. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Arrays: Colección de valores homogénea o no, y ordenada. Acceder a un elemento de un array: var primero = frutas[0]; // Manzana var ultimo = frutas[frutas.length - 1]; // Platano Recorrer un array: frutas.forEach(function (item, index, array) { console.log(item, index); }); // Manzana 0 // Platano 1 LA U R A F O LG A D O G A LA CH E
  • 14. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Propiedades LA U R A F O LG A D O G A LA CH E Array Propiedad Descripción length Devuelve la longitud del array prototype Permite agregar al objeto Array las propiedades que queramos. Ejemplo de prototype: Array.protoype.descriptor = null; dias = new Array ('lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes'); dias.descriptor = "Dias laborables de la semana";
  • 15. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Métodos LA U R A F O LG A D O G A LA CH E Array Método Descripción valueOf(elemento) Es el método por defecto de un objeto array y lo devuelve. indexOf(elemento) Devuelve la primera posición en la que se encuentra un elemento. push(elemento) Añade un elemento al final del array (aumenta su longitud). pop() Elimina un elemento al final del array y lo devuelve (disminuye su longitud) unshift(elemento) Añade un elemento al principio del array (aumenta su longitud) shift() Elimina el primer elemento del array y lo devuelve (disminuye su longitud). reverse() Modifica el array colocando los elementos en orden inverso. sort() Ordena los elementos del array según orden lexicográfico.
  • 16. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Métodos LA U R A F O LG A D O G A LA CH E Array Método Descripción concat(elemento/s) Concatena elementos de varios arrays. join(separador) Une todos los elementos en una cadena de texto (lo contrario que el split) unidos por un separador. slice(inicio,fin) Toma elementos de un array (sin modificar el original) desde la posición inicio a fin. splice(inicio,numer o_elementos,[reem plazo]) Elimina un número de elementos de un array empezando por la posición inicio. SI tiene el tercer parámetro, además, los sustituye por él.
  • 17. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Partimos del array frutas[“Manzana”, “Platano”]; Obtener la posición de un elemento del array. var posicion= frutas.valueOf(”Platano"); // Devuelve 1, porque plátano es la 2ª posición, pero empezamos por el 0. Añadir al final del array: var nuevoTamano = frutas.push("Naranja"); // ["Manzana", "Platano", "Naranja"] y devuelve el tamaño del array Eliminar del final del array: var ultimo = frutas.pop(); // borra Naranja (del final) y lo devuelve // ["Manzana", "Platano"]; LA U R A F O LG A D O G A LA CH E
  • 18. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Añadir al principio del array: var nuevoTamano = frutas.unshift("Fresa") // añade al principio y devuelve el tamaño // ["Fresa", “Manzana”, "Platano"]; Eliminar del principio del array: var primero = frutas.shift(); // borra Fresa(del principio) y lo devuelve // [“Manzana”, "Platano"]; LA U R A F O LG A D O G A LA CH E
  • 19. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Ordena según el orden lexicográfico: var frutas=[“Manzana”,”Platano”,”Kiwi”,”Higo”,”Pera”,”Ciruela”]; var frutasOrdenado = frutas.sort (); //frutas=[“Ciruela”, “Higo”, “Kiwi”, “Manzana”, “Pera”, “Platano”] //Devuelve el array ordenado Invierte el orden de los elementos del array: var frutas=[“Manzana”,”Platano”,”Kiwi”,”Higo”,”Pera”,”Ciruela”]; var frutasReves = frutas.reverse(); //frutas=[“Ciruela”, “Pera”, “Higo”, “Kiwi”, “Platano”, “Manzana” //Devuelve el array ordenado del revés LA U R A F O LG A D O G A LA CH E
  • 20. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Concatenar dos arrays: var frutas1 = [”Manzana", "Platano"]; var frutas2 = [“Ciruela”]; frutas1.concat[“Kiwi”,”Higo”,”Pera”]; //frutas1=[“Manzana”,”Platano”,”Kiwi”,”Higo”,”Pera”]; frutas1.concat(frutas2); //frutas1=[“Manzana”,”Platano”,”Kiwi”,”Higo”,”Pera”,”Ciruela”]; Unir los elementos de un array en una cadena: var frutas=[“Manzana”,”Platano”,”Kiwi”]; var cadena = frutas.join(“:”); // cadena = “Manzana:Platano:Kiwi”; LA U R A F O LG A D O G A LA CH E
  • 21. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Tomar elementos según su posición (inicial y final): var frutas=[“Manzana”,”Platano”,”Kiwi”, “Pera”,”Higo”]; var seleccion = frutas.slice(0, 1); // seleccion = [”Manzana”,”Platano"] var ultimos = frutas.slice(--2); // seleccion = [”Pera”,”Higo"] Eliminar elementos según su posición (inicio, número de elementos): var frutas=[“Manzana”,”Platano”,”Kiwi”, “Pera”,”Higo”]; var eliminado= frutas.splice(2, 2); // frutas = [”Manzana”,”Higo"] var ultimos = frutas.splice(-1);// frutas = [“Manzana”] LA U R A F O LG A D O G A LA CH E
  • 22. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS EJERCICIO: u4e2_arrays • Vamos a gestionar una lista de países haciendo uso de Arrays. Para ello necesitarás crear un archivo arrays.js que incluya las siguientes funciones: • Mostrar el número de elementos del array. • Mostrar todos los elementos del array. • Muestra los elementos del array en sentido inverso. • Muestra los elementos del array ordenados alfabéticamente (pero no los ordena). • Añadir un elemento al principio del array. • Añadir un elemento al final del array. • Borrar un elemento al principio del array (y decir cuál se ha borrado). • Borrar un elemento al final del array (y decir cuál se ha borrado). • Muestra el elemento que se encuentra en una posición que el usuario indica. • Muestra la posición en la que se encuentra un elemento que le indica el usuario. • Muestra los elementos que se encuentran en un intervalo que el usuario indica. LA U R A F O LG A D O G A LA CH E
  • 23. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS EJERCICIO: u4e2_arrays (continuación): • Ten en cuenta que el array será una variable global y que se pasará por parámetro en todas las funciones. • Cuando el usuario cargue la página, se cargará un prompt donde se mostrarán (en el prompt, no en la página) las opciones: • Mostrar número de países. • Mostrar listado de países (y le preguntará si quiere mostrarlos en el orden que se encuentran en el array, del revés u ordenados alfabéticamente). • Mostrar un intervalo de países (y le pedirá que introduzca el intervalo en formato inicio-fin; luego deberás extraer el valor inicio y fin). • Añadir un país (y le preguntará si quiere añadir al principio o al final). • Borrar un país (y le preguntará si quiere borrar al principio o al final). • Consultar un país (y le preguntará si quiere consultar por posición o por nombre). • Todas las operaciones que se realicen se irán mostrando en la página con su título. LA U R A F O LG A D O G A LA CH E
  • 24. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Arrays multidimensionales: Son arrays que almacenan en cadaposición otros arrays asuvez. Es posiblecrear arrays bidimensionales, tridimensionales,etc. Crear un arraybidimensional mediante otros arrays: var datos =new Array(); datos [0] = new Array (“Programacion”, “1DAW”, 10); datos[1] = new Array (“DWEC”, “2DAW”, 9); datos[2] = new Array (“DIW”, “2DAW”, 5); Crear un arraybidimensional usandocorchetes: var datos =[ [“Programacion”, “1DAW”, 10], [“DWEC”, “2DAW”, 9], [“DIW”, “2DAW”, 5] ]; LA U R A F O LG A D O G A LA CH E
  • 25. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.3. ARRAYS Acceder a una posición de un array multidimensional: Tenemos que indicar tantas posiciones como dimensiones (índices) tenga el array: var elemento = datos [0][2]; Imprimir datos de un array multidimensional: Utilizamos tantos bucles for anidados como dimensiones (índices) tenga el array. for (i=0; i<datos.length; i++){ for (j=0; j<datos[i].length; j++){ document.write(“Elemento ”+i+”,”+j+”:“+datos[i][j]); } } LA U R A F O LG A D O G A LA CH E
  • 26. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.4. OBJETOS Objetos: En Javascript, un objeto es una colección de propiedades que a su vez pueden ser datos o métodos. Constructor: es una función especial para crear un objeto. Empieza en mayúscula: function Coche() { //Propiedades y métodos} Creación de un objeto: var unCoche = new Coche(); LA U R A F O LG A D O G A LA CH E Coche() var cocheazul = new Coche(); var cocherojo = new Coche(); var cocheverde = new Coche();
  • 27. Definir propiedades del objeto: secrean en el constructor precedidas por la palabra this. “Constructor”sin parámetros: function Coche() { this.marca =“”; //Vacío this.modelo = “”; //Vacío this.combustible =“Diesel”; //Inicializado this.cantidad=0; //Inicializado } “Constructor”con parámetros: function Coche(marca, modelo, combustible, cantidad) { this.marca =marca; this.modelo = marca; this.combustible = combustible; this.cantidad=cantidad; //Cada propiedad toma los valores recibidos por parámetro } Crear un objeto vacío(sin propiedades): var cocheVacio = new Coche(); Cambiar valores en las propiedades: cocheVacio.marca = “Seat”; cocheVacio.modelo = “Ibiza”; cocheVacio.combustible = “Diesel”; cocheVacio.cantidad = 40; Crear un objeto inicializado(conpropiedades): var miCoche = new Coche(“Seat”, “Ibiza”, “Diesel”, 40); Acceder a las propiedades: document.write(“Mi coche es un “+miCoche.marca+” “+miCoche.modelo); LA U R A F O LG A D O G A LA CH E 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.4. OBJETOS
  • 28. Definir métodos del objeto: Permiten acceder y modificar las propiedades de los objetos. Empiezan en minúscula. Métodoque modificalacantidaddecombustible function rellenarDeposito(litros ) { this.cantidad = litros; } Referenciaal métodofuera del objeto (¡norecomendado!) function Coche(marca, modelo, combustible, cantidad) { //Propiedades this.marca =marca; this.modelo = marca; this.combustible = combustible; //Métodos this.rellenardeposito = rellenardeposito; } Referenciaal métododentrodel objeto function Coche(marca, modelo, combustible, cantidad) { //Propiedades this.marca =marca; this.modelo = marca; this.combustible = combustible; //Métodos this.rellenardeposito = function (litros) { this.cantidad = litros; } } LA U R A F O LG A D O G A LA CH E 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.4. OBJETOS
  • 29. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.4. OBJETOS Objetos literales: Un literal es un valor fijo. Está formado por parejas de tipo nombre:valor. Ejemplo: coche {marca:”Ibiza”,modelo:”Seat”,combustible:”diesel”,cantidad:40}; Ejemplo equivalente: var coche = new Object(); coche.marca=”Ibiza”; coche.modelo=”Seat”; coche.combustible=”diesel”; coche.cantidad=40; Acceso: coche.marca; coche[“marca”]; LA U R A F O LG A D O G A LA CH E
  • 30. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.4. OBJETOS EJERCICIO: u4e4_objetos: • Necesitamos almacenar en un programatodos los discos demúsicaquetenemos en casa. Ahoraquesabemos crear nuestros propios objetos es el mejor modode guardar estainformación. • Crea un objeto“disco”que almacenelasiguienteinformación: • Nombredel disco. • Grupode músicaocantante. • Añode publicación. • Tipode música(podráser “rock”, “pop”, “punk”o “indie”); • Localización: almacenaráun númerodeestantería. • Prestado: almacenaráun valor booleano. Por defectoseráfalse. • Además tendrálos siguientesmétodos: • Un “constructor”sin parámetros (las4 primeras propiedades serán cadenas vacías, lalocalización será0 por defectoy prestadoestará a false). • Un método quepermitaincluir las cincoprimeras propiedades; lapropiedad prestadoseguiráa false. • Un método quepermitirácambiar el númerodeestanteríaen lalocalización. • Un método quepermitirácambiar la propiedad Prestado. • Un método quemuestretodala informacióndeun disco. • Guardatodo el códigoen un archivollamadodisco.js LA U R A F O LG A D O G A LA CH E
  • 31. 4. PROGRAMACIÓN CON ARRAYS, FUNCIONES Y OBJETOS DEFINIDOS POR EL USUARIO 4.4. OBJETOS EJERCICIO: u4e4_objetos (continuación): • Carga en tu página el archivo de arrays que hicimos en la práctica anterior. • Crea un array vacío para almacenar los discos. • Cuando el usuario cargue la página, se cargarán las opciones: • Mostrar número de discos. • Mostrar listado de discos(y le preguntará si quiere mostrarlos en el orden que se encuentran en el array, del revés u ordenados alfabéticamente). • Mostrar un intervalo de discos(y le pedirá que introduzca el intervalo en formato inicio-fin; luego deberás extraer el valor inicio y fin). • Añadir un disco (y le preguntará si quiere añadir al principio o al final). • Borrar un disco (y le preguntará si quiere borrar al principio o al final). • Consultar un disco (y le preguntará si quiere consultar por posición o por nombre). • Todas las operaciones que se realicen se irán mostrando en la página con su título. • REUTILIZA EL CÓDIGO DE LA PRÁCTICA ANTERIOR. LA U R A F O LG A D O G A LA CH E