6.1 Creacion de Funciones

Las funciones son fragmentos de código que definen una o varias acciones (se hace llamar código modular), que puede usarse tantas veces como sea necesario, usado así para optimizar el código y evitar repetirlo.

La estructura iniciara con la palabra reservada function seguida del nombre, entre paréntesis los paramentos, o bien sin parámetros , entre llaves el bloque de  instrucciones que cumplirá.

Función con parámetros:

 function NombreDeLaFuncion (parametros1, paremetro2, ..... parametro n)
{
   Bloque;
   De;
   Instrucciones;
}

Para invocar la función, basta con escribir el nombre que se le asigno, recuerda que tiene que ser sintacticamente igual.

NombreDeLaFuncion(a,b,.....n);

Las funciones y procedimientos son iguales, en otros lenguajes de programación se cuenta con un palabra reservada antes del nombre, por ejemplo en otros lenguajes podría llevar, void, public, private, en el caso de Javascript solo existe un tipo de instrucción y es la  function.

Todas las funciones de Javascript regresan un valor, por ejemplo:

function FuncionDePrueba()
{
}
var valor =  FuncionDePrueba();
console.log(valor);

El valor que regresara es :

undefined

Es importante mencionar que lleve o no parametros siempre para reconocerla como una fucion al ser invocada debe de escribirse un par de parentesis.

Veamos un ejemplo:

function FuncionDePrueba()
{
 console.log("Dentro de la funcion");
}

var ValorResultante  =  FuncionDePrueba;

Como ya lo mencionamos todo regresa un valor, incluso puede regresar la definición de una función, en este caso retorna un objeto que es una función.

>FuncionDePrueba
<-function FuncionDePrueba() 
{ 
console.log("Dentro de la funcion");
}


>FuncionDePrueba();
<-Dentro de la funcion


Loading

5.1 Valor y Referencia

Las variables de tipo primitivos siempre se pasan por valor, es decir ambos tienen su propio espacio en memoria.
Para cada una de las variables declaradas se crea un  espacio en memoria y guarda el valor para cada una de ellas, así que si se asigna un  valor diferente después de igualar a otra variable conserva el valor que inicialmente se le asigna.

var x = 35;
var y = x;

console.log(x);
console.log(y);

x = 55;

console.log(x);
console.log(y);

Con los objetos siempre se pasan por referencia, es decir se declara un objeto con cada una de sus propiedades y se queda en un espacio de memoria, si se igualan dos objetos, en realidad es el mismo espacio de memoria solo apuntado desde dos objetos, por lo tanto si se asigna un valor distinto a una propiedad del objeto cuando hacemos referencia al mismo tendrá el valor referenciado las veces que se llame.

var a = {
         nombre: "Karen"
        }

var b = a;

console.log(a);
console.log(b);

c.nombre = "Eduardo";

console.log(a);
console.log(b);

c.nombre = "Ana";

console.log(a);
console.log(b);

Con esto podemos diferencia entre asignar por valor o por referencia segun el espacio de memoria asignado o apuntado.


Loading

5.Escritura dinámica

Para comprender mejor la escritura dinámica se debe aclarar que existen 2 tipos de datos:
Primitivos y objetos

*Primitivos: un tipo de datos que apunta a un solo valor, estos a su vez se clasifican en
5 tipos:

-Strings (Cadenas de texto)

var z = "Hola mundo";

-Booleano (True, False)

var Opcion = false;

-Undefined (Contiene undefined)

var Instruccion;
Instruccion
undefined

-Null (Contiene null)

var variableNula =  null
variableNula
null

-Number (Valores numéricos)

var intervalo = 8;

Algo que tenemos en consideración las variables no están asignadas a un tipo de dato especifico podemos asignar un valor numérico en uno que anteriormente tenia asignado un dato booleano.

var a = "Hola mundo";
a = false;
a = 1245;

*Objeto: Colección de tipos de datos primitivos u otros objetos.
Dentro de los objetos esta dentro de algo llamado nomenclatura de pares
Cada una de las propiedades tiene que tener un par.

Comprende 3 Tipos:

-Tipos predefinidos de JavaScript

  • Date (Contiene fecha)
    • Constructor: new Date(año_num,mes_num,dia_num [,hor_num,min_num,seg_num,mils_num])
var cumpleanos = new Date("April 11, 1990 14:20:00");
cumpleanos
Wed Apr 11 1990 14:20:00 GMT-0500 (Hora de verano central (México))
  • Error (Mensaje de error)
var ErrorLiteral = new Error("Error al ejecutar el código");
ErrorLiteral
Error: Error al ejecutar el código
    at <anonymous>:1:20

-Arrays

  • Serie de elementos o formación de tipo vector o matriz
    • Constructor: new Array(longitudDelArray)       new Array(elemento0, elemento1, …, elementoN)
var DiasSemana = ['Lunes', 'Marte', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo'];
DiasSemana
(7) ["Lunes", "Marte", "Miercoles", "Jueves", "Viernes", "Sabado", "Domingo"]
DiasSemana.length;
7
DiasSemana[0]
"Lunes"
DiasSemana[4]
"Viernes"
DiasSemana.forEach(function (elemento, indice, array) {
    console.log(elemento, indice);
});
VM3284:2 Lunes 0
VM3284:2 Marte 1
VM3284:2 Miercoles 2
VM3284:2 Jueves 3
VM3284:2 Viernes 4
VM3284:2 Sabado 5
VM3284:2 Domingo 6
undefined
DiasSemana.push('Lunes2')
8
DiasSemana
(8) ["Lunes", "Marte", "Miercoles", "Jueves", "Viernes", "Sabado", "Domingo", "Lunes2"]
DiasSemana.pop();
"Lunes2"
DiasSemana
(7) ["Lunes", "Marte", "Miercoles", "Jueves", "Viernes", "Sabado", "Domingo"]

Cabe mencionar que existen otros tipos llamados especiales que esta construidos por el usuario o que comprenden una función compuesta. En la lección de funciones hablaremos sobre este tema.


Loading

4.Variables

En JavaScript todas las Variables son elementos utilizados para asignar valores o hacer referencia con otros valor. Se definen de la misma forma: con la palabra reservada “var” ya sea para asignar cadenas de texto o números, es igual en cualquier caso.

Numérico: utilizado para asignar valores enteros, decimales o flotantes;

var Numero= 1.298;
var Total = 334.78;

Texto: para almacenar cadenas o palabras, la sintaxis correcta para asignarlo es escribir el texto entre comillas simples o dobles.

var PrimerMes = 'Enero';
var Saludo = "Buenos dias, un gusto verlos";
var Letra = 'r';

Booleanos: almacena solo 2 valores “true” o “false”:}

var Respuesta = false;

Arrays: Son considerados vectores o matrices que almacenan una serie de valores o cadenas de texto y/o numeros:

var nombre_array = [dato1, dato2,dato3......, datoN];
var Meses = ["Enero","Febrero","Marzo","Abril".........,"Diciembre"];

Para hacer referencia a cada una de las valores del array se utiliza:

var CuartoMes = Meses[3];
var segundoMes = Meses[1];

El conteo de las posiciones en el array comienza con cero.

DELETE: elimina una propiedad de un objeto:

var DiasSemana = {PrimerDia:"Lunes",SegundoDia:"Martes",TercerDia:"Miercoles"....., SeptimoDia:"Domingo"}
delete DiasSemana.SegundoDia;

IN: Devuelve un valor booleano para cada caso donde se cumpla o no lo especificado:

var colores= new Array("Rojo", "Azul", "Verde", "Amarillo", "Blanco");
0 in colores
true
3 in colores
true
6 in colores
false
"Morado" in colores
false

Otras predefinidas son:

"PI" in Math
true
NaN in Number
true
length in String
false

Loading

3.5 Operadores de comparación

Los operadores de comparación o relacionales son para relacionar, comprobar o cumplir alguna condición. El resultado de estos operadores siempre es una valor booleano

  • == Igual a
  • === Igual valor a tipo
  • != Diferente
  • !== Diferente tipo, diferente valor
  • > Mayor que
  • < Menor que
  • >= Mayor igual que
  • <= Menos igual que
  • ? Ternario
<html>
    <head>
       <script>
          var a,b,c,d,e,f;
          a = 2;b=3;c=5; d=15;
          e='Hola'; f='Adios';
          alert(a>c);//false
          alert(b<d);//true
          alert(d==c);//false
          alert(b>c);//false
          alert(e!=f); //true
          alert(a!=f ? 'Si':'No'); //Si     
       </script>
    </head>
</html>

Loading

3.4 Operadores de cadena

Los operadores de cadena sirven para concatenar cadenas u objetos.

Las variables de cadena se pueden asignar comillas simples ‘ o dobles de forma indistinta.

<html>
    <head>
       <script>
         var PrimerNombre = 'Luis';
         var segundoNombre = "Antonio";
         var Apellido ="Lara";
         var Nombre = PrimerNombre + SegundoNombre + Apellido;
         alert(Nombre );
       </script>
    </head>
</html>

El resultado es la unión de las tres cadenas pero veamos que no se separa entre cada unas de ellas, para eso necesitamos agregar lo siguiente:

<html>
    <head>
       <script>
         var PrimerNombre = 'Luis';
         var segundoNombre = "Antonio";
         var Apellido ="Lara";
         var Nombre = PrimerNombre +" " + SegundoNombre + " " + Apellido;
         alert(Nombre );
       </script>
    </head>
</html>

Como sucede con los operadores de asignación podemos utilizar:

<html>
    <head>
       <script>
         var PrimerNombre = 'Luis';
         var SegundoNombre = "Antonio";
         var Apellido ="Lara";
         var Nombre = "";
         Nombre += PrimerNombre;
         Nombre += " ";
         Nombre += SegundoNombre;
         Nombre += " ";
         Nombre += Apellido;
         alert(Nombre);//Luis Antonio Lara
       </script>
    </head>
</html>

Tengamos en cuenta que las variables pueden ser de cualquier tipo ya que en Javascript con especificar var al principio es suficiente.

Veamos un ejemplo donde el operador + funciona no solo para sumar si no también para concatenar cadenas :

<html>
    <head>
       <script>
         var Nombre= 'Luis Antonio Lara';
         alert(10 + 28 + " " +Nombre);
       </script>
    </head>
</html>

Loading

3.3 Operadores de asignación

Los operadores de asignación

  • Operador +=
  • Operador -=
  • Operador *=
  • Operador /=
  • Operador %=
  • Operador ==

Los operadores de asignación son los mas simples y mas utilizados ya que su función es apuntar un valor a una variable o guardarlo en la misma.

<html>
    <head>
       <script>
         var a = 10;
         var b = 2;
         var c = 5;
         var d = 3;
         var e = 100;
         c+=a;
         alert(c);// resultado 15
         b-=a;
         alert(b);// resultado -8
         a-=b;
         alert(a);// resultado 18
         c/=d;
         alert(c);// resultado 5
         d*=a;
         alert(a);// resultado 54
         e = a;
         alert(e);// resultado 54
         e%=c;
         alert(e);// resultado 4
       </script>
    </head>
</html>

El operador == no debe de confundirse con = ya que el el doble igual entra en la categoría de operadores de comparación


Loading

3.2 Operadores aritméticos

Son aquellos con los que podemos manipular datos numéricos, por ejemplo suma, resta, multiplicación división. Los operadores para cada uno son:

  • Suma +
  • Resta –
  • Multiplicación *
  • Potencia **
  • División para obtener el cociente /
  • División para obtener el restante %
  • División para obtener la parte entera no es posible en Javascript

Ejemplos:

<html>
    <head>
       <script>
         var a = 10;
         var b = 2;
         var c = 5;
         alert(a+b+c);// resultado 17
         alert(a-c);// resultado 5
         alert(a/c);// resultado 2
         alert(a*c*b);// resultado 100
         alert(15/2);// resultado 7.5
         alert(a**c);// resultado 100
         alert(a%c);// resultado 0
       </script>
    </head>
</html>

Loading

3.1 Operadores lógicos

Los operadores lógicos sirven para escribir expresiones que den como resultado un dato booleano, es decir verdadero o falso. Se utilizan especialmente en estructuras condicionales y/o de repeticion.
En Javascript los operadores lógicos son:

  • && corresponde a y (AND)
  • || corresponde a o (OR)
  • ! corresponde a no (NOT)

Operador Lógico AND &&
Este operador solo regresa true o verdadero cuando las dos variables son true, para las demás combinaciones se regresa false, ejemplo:

<html>
    <head>
       <script>
         var a = false;
         var b = true;
         var c =  true;
         alert(a&&b);// resultado false
         alert(b&&c);// resultado true
       </script>
    </head>
</html>

Operador Logico OR ||
Se determina por un par de pipes, para este operador regresa true cuando uno de las variables es true, ejemplo:

<html>
    <head>
       <script>
         var a = false;
         var b = true;
         var c =  false;
         alert(a||b);// resultado true
         alert(b||c);// resultado false
       </script>
    </head>
</html>

Operador lógico NOT !
Este operador da como resultardo lo contrario a la variable, ejemplo:

<html>
    <head>
       <script>
         var a = false;
         var b = true;
         alert(!b);// resultado false
         alert(!a);// resultado true
       </script>
    </head>
</html>

Loading

3. Operadores

OPERADORES.

Los operadores son fundamentales para ver a las variables hacer que funcione el código ya que con ellos podemos comparar, asignar, realizar funciones matemáticas, etc.

Para JavaScript  los usados en la sintaxis de  son + – * % = >< en expresiones sencilla o grupos de expresiones como lo son:

var resultado = (8+9)/10-3;

El orden en el que se resuelve dichas expresiones es según la jerarquía de operaciones.
Al hablar de comparadores en Javascript no referimos a >,<, >=, <=, ==, !=

La manera en la que Javascript interpreta el texto plano:
Las cadenas de texto se escriben entre comillas dobles.
Para hacer concatenaciones se escribe un signo de mas en cada una de las uniones:

Los operadores logicos determinan la logica entre 2 valores o expresiones, representados por || para “ó”, && para “y” y ! para “no en una expresion booleana”

Algunos caracteres necesitan diagonal invertida para reconocerse como funcion en Javascript:

\t espacio
\n para saldo de linea
\\ para una diagonal (\)

Para comparar texto se utiliza los operadores : == ó !=
Se debe mencionar que es sencible a mayusculas y minusculas.

Para saber la longitud de la(s) palabras utilizamos la propiedad .lenght

Los espacios en blanco también son contados


Loading