Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Los Objetos
Para que un lenguaje se considere orientado a objetos, tiene que cumplir con una serie
de caractersticas tales como:
Herencia
Encapsulamiento
Abstraccin
Polimorfismo
ActionScript
Ada
C++
C#
Clarion
Clipper
Gambas
Fortran 90/95
Java
Objective-C
PHP
PowerBuilder
Python
Ruby
VB.NET
Visual FoxPro7
Visual DataFlex
Visual Objects
XBase++
Lenguaje DRP
Scala8
Selft
Javascript
Pauscal
Cecil
NwetonScript
Io
MOO
REBOL
Squeak
Atributos
Mtodos
nombre.toUpperCase();
Objetos Math
Formalmente no existen funciones matemticas, lo que existen son mtodos asociados
al objeto Math. Pero como el objeto Math es un objeto esttico, es decir que a partir de
l no se genera ningn otro tipo de objeto Math, podemos pensar que sus mtodos son
nicos.
As como hay operadores matemticos hay funciones matemticas. Que se pueden
definir como palabras que tienen una funcin definida dentro de las matemticas.
Para utilizar una propiedad o un mtodo de cualquier objeto hay que escribir primero el
nombre del mtodo luego un punto y a continuacin el nombre del mtodo (funcin), as:
Math.nombre
Propiedades y Mtodos
A continuacin se muestran, en la tabla 11.1, algunos de los mtodos (funciones)
correspondientes a este objeto.
No. Nombre
Descripcin
Ejemplo
abs(x)
acos(x)
Devuelve el arcocoseno de x. Si
el valor de x est entre -1 y 1,
devuelve un valor entre 0 y PI
radianaes, en caso contrario
devuelve NaN. Si se quiere en
grados se multiplica por PI/180
asin(x)
Devuelve el arcoseno de x. Si el
valor de x est entre -1 y 1,
devuelve un valor entre -PI/2 y
PI/2 radianaes, en caso contrario
devuelve NaN. Si se quiere en
grados se multiplica por PI/180
atan(x)
El arcotangente de x, devuelve
un valor entre -PI/2 y PI/2
radianaes, en caso contrario de
estar vacio, devuelve NaN. Si se
quiere en grados se multiaplica
por PI/180
ceil(x)
cos(x)
exp(x)
floor(x)
log(x)
10 pow(x,y)
11 round(x)
Redondea x al entero ms
cercano. El resultado es entero.
12 sin(x)
13 sqrt(x)
14 tan(x)
No. Nombre
Descripcin
Ejemplo
Devuelve el valor de la
constante de Euler: 2.7183
PI
Devuelve el valor de la
constante pi : 3.14159
Ejemplo 11.1
Se leen cuatro valores reales, disear una aplicacin javascript que realice lo siguiente:
1. Sumar los valores absolutos de todos
2. Multiplicar solo las partes enteras de los valores ledos
3. Si los valores representaran las pendientes de 4 lneas rectas, calcular el ngulo
de inclinacin en grados-, de las dos primeras, respecto al eje de las abscisas.
4. Si el tercer y cuarto valor representan los galones de pintura que se necesitan para
pintar un tanque, determinar exactamente, cuntos galones se tienen que comprar
en la ferretera.
5. Sumar la raz cuadrada del primero, ms la raz cbica del segundo, y restarle el
cubo de la suma del tercer ms el cuarto valor, y redondear el resultado al entero
mayor.
Solucin
Anlisis
Datos:
a, b, c, d
Clculos:
Luego de mostrar todas las respuestas, se tiene que ver el archivo html base (figura 11.3).
En caso que una de las respuestas no aparezca, tiene que presionarse la secuencia de
teclas Shift+Ctrl+j para mostrar los errores javascript y corregirlos.
Figura 11.3 La interfaz, correspondiente al hipertexto bsico. Se muestra hasta el final, luego que todas
las respuestas han salido.
Objetos String
Los objetos para utilizar en el tratamiento de cadena de caractres.
Funciones y propiedades para cadena de caracteres
Cada vez que se asigna un valor string (cadena de caracteres) a una variable, se crea un
objeto de la clase string. Al asignar un string a una variable no se usa el operador new.
Propiedades y Mtodos
Mtodos
Los mtodos manipulan la apariencia de la cadena (color, tamao, etc.). Suponiendo que
la variable cadena es un objeto de la clase string, el uso de los mtodos se realiza de la
siguiente manera:
cadena.metodo( );
La sintaxis muy parecida a la de las propiedades, con la diferencia que al final hay que
colocar un parntesis, el cual ya explicaremos ms adelante. Se van a utilizar dos tipos
de mtodos:
Nombre
Descripcin
Ejemplo
Resultado
charAt(indice)
indexOf(carcter)
lastIndexOf(carcter)
nombre=Universidad;
c = nombre.charAt(3);
alert ( c );
nombre=Universidad;
c = nombre.indexOf(i);
alert ( c );
nombre=Universidad;
c = nombre.lastIndexOf(i);
alert ( c );
Nombre
Descripcin
toLowerCase()
Muestra la cadena de
caracteres que hay entre
el primer ndice (incluido)
y ltimo indice (no
incluido).
Muestra la cadena de
caracteres
que
hay
desde el primer ndice
(incluido) hasta el ltimo
indice (incluido).
Muestra la cadena de
caracteres
que
hay
desde el ndice cero
hasta el ltimo indice
(incluido).
Muestra
todos
los
caracteres de la cadena
en minsculas.
toUpperCase()
Muestra
todos
los
caracteres de la cadena
en maysculas.
substring(primerindice,
ultimoindice)
substring(primerindice)
substring(indice_negativo)
Ejemplo
Resultado
nombre=Universidad;
c = nombre.substring(1,4);
alert ( c );
niv
nombre=Universidad;
c = nombre.substring(1);
alert ( c );
niversidad
nombre=Universidad;
c = nombre.substring(-2);
alert ( c );
Universidad
nombre=LaUrA;
c = nombre.toLowerCase();
alert ( c );
laura
nombre=LaUrA;
c = nombre.toUpperCase();
alert ( c );
LAURA
No.
Nombre
substr(x)
substring(inicio,fin)
Descripcin
Ejemplo
toLowerCase()
alert ("Colocar en
mincula "+ nom + " = "
+ nom.toLowerCase() )
;
toUpperCase()
alert ("Colocar en
maycula "+ nom + " = "
+ nom.toUpperCase() )
;
No. Nombre
Descripcin
Ejemplo
length
Devuelve la cantidad de
caracteres de la cadena.
Ejemplo. Si cc="Hola",
cc.length, devolver: 4, valor
entero
Ejemplo 11.2
Leer el nombre y apellido de una persona y escribir su nombre completo, indicar cuntos
caracteres tiene el nombre y cuntos el apellido y sumar la cantidad de caracteres del
nombre ms las del apellido.
Solucin
Anlisis
Datos:
dos
Respuestas: tres
Clculos:
Figura 11.4 Propiedad length para cadena de caracteres. Codificacin ejemplo 11.2
Ejecucin
Los datos se muestran en la figura 11.5.
Luego de introducir los datos, que son dos, la aplicacin comienza a mostrar las
respuestas, que se ven en la figura 11.6.
Ejemplo 11.3
En una seccin de matemtica, al final del semestre, quedan slo 4 estudiantes, de los
cuales se conocen los siguientes datos: nombre, apellido, cdula y las notas de los cuatro
parciales. Sabiendo que los parciales tienen el mismo porcentaje, disear una aplicacin
en javascript para el profesor, que realice lo siguiente:
1. Mostrar el apellido y la previa de cada estudiante
2. Calcular la nota promedio de los segundos parciales
3. Escribir todos los nombres completos de los estudiantes. Colocar los apellidos en
mayscula y los nombres en minscula, separados por una coma.
4. Sumar los primeros dgitos de las cdulas de los dos primeros estudiantes
5. Obtener una palabra con las dos ltimas letras de los apellidos de los ltimos 3
estudiantes.
Solucin
Anlisis
Datos:
Clculos:
var a3, n3, ci3, p13, p13, p33, p43, prev3, a4, n4, ci4, p14, p14, p34, p44, prev4 ;
var prev1, prev2, prev3, prev4, prom2 ;
var di1, di2, di1n, di2n, sdig,long2, long3, long4, letras2, letras3, letras4, palabra ;
// Constantes
pi = Math.PI ;
// Lectura de los datos
// Alumno 1
a1 = prompt ("Apellido de alumno No. 1 " , "") ;
n1 = prompt ("Nombre de alumno No. 1 " , "") ;
ci1 = prompt ("Cdula de alumno No. 1 " , "") ;
p11 = parseInt ( prompt ("Nota parcial 1 del alumno No. 1 (entero) = " , "") ) ;
p21 = parseInt ( prompt ("Nota parcial 2 del alumno No. 1 (entero) = " , "") ) ;
p31 = parseInt ( prompt ("Nota parcial 3 del alumno No. 1 (entero) = " , "") ) ;
p41 = parseInt ( prompt ("Nota parcial 4 del alumno No. 1 (entero) = " , "") ) ;
// Alumno 2
a2 = prompt ("Apellido de alumno No. 2 " , "") ;
n2 = prompt ("Nombre de alumno No. 2" , "") ;
ci2 = prompt ("Cdula de alumno No. 2 " , "") ;
p12 = parseInt ( prompt ("Nota parcial 1 del alumno No. 2 (entero) = " , "") ) ;
p22 = parseInt ( prompt ("Nota parcial 2 del alumno No. 2 (entero) = " , "") ) ;
p32 = parseInt ( prompt ("Nota parcial 3 del alumno No. 2 (entero) = " , "") ) ;
p42 = parseInt ( prompt ("Nota parcial 4 del alumno No. 2 (entero) = " , "") ) ;
// Alumno 3
a3 = prompt ("Apellido de alumno No. 3 " , "") ;
n3 = prompt ("Nombre de alumno No. 3" , "") ;
ci3 = prompt ("Cdula de alumno No. 3" , "") ;
p13 = parseInt ( prompt ("Nota parcial 1 del alumno No. 3 (entero) = " , "") ) ;
p23 = parseInt ( prompt ("Nota parcial 2 del alumno No. 3 (entero) = " , "") ) ;
p33 = parseInt ( prompt ("Nota parcial 3 del alumno No. 3 (entero) = " , "") ) ;
p43 = parseInt ( prompt ("Nota parcial 4 del alumno No. 3 (entero) = " , "") ) ;
// Alumno 4
a4 = prompt ("Apellido de alumno No. 4 " , "") ;
n4 = prompt ("Nombre de alumno No. 4" , "") ;
ci4 = prompt ("Cdula de alumno No. 4 " , "") ;
p14 = parseInt ( prompt ("Nota parcial 1 del alumno No. 4 (entero) = " , "") ) ;
p24 = parseInt ( prompt ("Nota parcial 2 del alumno No. 4 (entero) = " , "") ) ;
p34 = parseInt ( prompt ("Nota parcial 3 del alumno No. 4 (entero) = " , "") ) ;
p44 = parseInt ( prompt ("Nota parcial 4 del alumno No. 4 (entero) = " , "") ) ;
// 1) Apellidos y previas de todos los alumnos
prev1 = (p11 + p21 + p31 + p41)/4 * 0.70 ;
prev2 = (p12 + p22 + p32 + p42)/4 * 0.70 ;
</script>
</head>
<body>
<h5 align="right">PLC, 02 de mayo de 2015</h5>
<h2 align="center">Objeto String. Operaciones com mtodos</h2>
<p>En una seccin de matemtica, al final del semestre,
quedan slo 4 estudiantes, de los cuales se conocen los siguientes datos:
nombre, apellido, cdula y las notas de los cuatro parciales.
Sabiendo que los parciales tienen el mismo porcentaje,
disear una aplicacin en javascript para el profesor, que realice lo siguiente:</p>
<ol>
<li>Mostrar el apellido y la previa de cada estudiante</li>
<li>Calcular la nota promedio de los segundos parciales</li>
<li>Escribir todos los nombres completos de los estudiantes.
Colocar los apellidos en mayscula y los nombres en minscula,
separados por una coma.</li>
<li>Sumar los primeros dgitos de las cdulas de los dos primeros estudiantes</li>
<li>Obtener una palabra con las dos ltimas letras de los apellidos de los ltimos
3 estudiantes.</li>
</ol>
<h4 align="right">prof. gImery</h4>
<h5 align="right">seccin 00</h5>
</body>
</html>
Ejecucin
Apellido
Montalvo
Guzzardi
Figueroa
Herrera
Nombre
Claudia
Laura
Patricia
Elizabeth
CI
85123114
86125556
20366598
20850259
P1
3
4
2
3
P2
9
2
8
2
P3
5
8
7
10
P4
6
9
7
9
Las respuestas de la aplicacin para los datos anteriores se muestran en la figura 11.7.
Respuestas para la primera pregunta:
Respuestas de preguntas 4 y 5.