Manual de JavaScript: Objetos intrínsecos

Objetos intrínsecos de JavaScript

Javascript posee algunos objetos predefinidos u objetos intrínsecos, como Array, Boolean, Date, Function, Global, Math, Number, Object, RegExp y String, muy prácticos para manejar varios tipos de datos gracias a las propiedades, métodos y eventos que incorporan. Veamos algunos de ellos.

Nota

  • Los objetos intrínsecos comienzan por una letra mayúscula.
  • Los objetos intrínsecos se crean con la sentencia new.
  • Array

    El Array o matriz permite almacenar cualquier tipo de dato: números, cadenas, objetos, arrays, etc. y pueden mezclarse. La longitud de los arrays es dinámica, si ubicamos un elemento en una posición de índice superior al existente, el array se redimensionará hasta el nuevo valor.

    Propiedades:

    • length: número de elementos.

    Métodos:

    • join(): devuelve un string con los elementos del array concatenados, separados por comas.
    • sort(): ordena alfabéticamente los elementos del array.
    • reverse(): transpone los elementos del array.

    Ejemplo:

    Mi_array = new Array(2)
    Mi_array[0] = "Z"
    Mi_array[1] = "A"
    Mi_array[2] = "B"
    document.write(Mi_array.length + "<br />")
    document.write(Mi_array.join() + "<br />")
    document.write(Mi_array.reverse() + "<br />")
    document.write(Mi_array.sort() + "<br />")

    obtenemos:

    3
    Z,A,B
    B,A,Z
    A,B,Z
  • Date

    Almacena fechas y horas. Si lo creamos sin argumentos se inicializa con la fecha y hora del sistema:

    Mi_fecha = new Date()
    document.write(Mi_fecha)

    obtenemos:

    Tue Sep 22 2009 22:02:36 GMT+0200 (CET)

    Podemos inicializarlo con una fecha y hora concreta, con la sintaxis:

    Mi_fecha = new Date(year, month, day, hours, minutes, seconds)

    Métodos destinados a obtener las distintas partes de una fecha/hora:

    • getDate(): día del mes, número entre 1 y 31.
    • getFullYear(): año con cuatro dígitos.
    • getMonth(): mes, número entre 0 y 11 (enero = 0).
    • getDay(): día de la semana, número entre 0 y 6 (domingo = 0).
    • getHours(): hora, número entre 0 y 23.
    • getMinutes(): minutos, número entre 0 y 59.
    • getSeconds(): segundos, número entre 0 y 59.
    • getTimezoneOffset(): diferencia en minutos entre la hora local y la GMT (Greenwich Meridian Time).
    • getTime(): milisegundos transcurridos desde el 1/01/1970 a las 0:00:00 hasta la fecha y hora actual.

    Métodos destinados a establecer las distintas partes de una fecha/hora:

    • setDate()
    • setFullYear()
    • setMonth()
    • setHours()
    • setMinutes()
    • setSeconds()
    • setTime()

    Ejemplo:

    Mi_fecha = new Date()
    document.write(Mi_fecha + "<br />")
    document.write(Mi_fecha.getFullYear() + "<br />")
    Mi_fecha.setFullYear(2011)
    document.write(Mi_fecha.getFullYear() + "<br />")

    obtenemos:

    Tue Sep 22 2009 22:02:36 GMT+0200 (CET)
    2009
    2011
  • Math

    Este objeto permite trabajar con constantes y funciones matemáticas.

    Propiedades: devuelven constantes:

    • Math.E: constante de Euler o número e (2.718281828459045).
    • Math.LN2: logaritmo natural de 2 (0.6931471805599453).
    • Math.LN10: logaritmo natural de 10 (2.302585092994046).
    • Math.LOG2E: logaritmo en base 2 de e (1.4426950408889634).
    • Math.LOG10E: logaritmo en base 10 de e (0.4342944819032518).
    • Math.PI: circunferencia de un círculo / diámetro (3.141592653589793).
    • Math.SQRT1_2: raíz cuadrada de 1/2 (0.7071067811865476).
    • Math.SQRT2: raíz cuadrada de 2 (1.4142135623730951).

    Métodos:

    • Math.sin(): seno de un ángulo (en radianes).
    • Math.asin(): arco seno (en radianes) de un número.
    • Math.cos(): coseno de un ángulo (en radianes).
    • Math.acos(): arco coseno (en radianes) de un número.
    • Math.tan(): tangente de de un ángulo (en radianes).
    • Math.atan(): arco tangente (en radianes) de un número.
    • Math.abs(): valor absoluto de un número.
    • Math.ceil(): entero más pequeño posible igual o mayor que el argumento dado.
    • Math.floor(): entero más grande posible igual o menor que el argumento dado.
    • Math.exp(): números e.
    • Math.log(): logaritmo natural (en base e) del argumento dado.
    • Math.pow(x,y): potencia. El primer argumento es la base y el segundo el exponente.
    • Math.max(x,y): devuelve el mayor de los dos argumentos.
    • Math.min(x,y): devuelve el menor de los dos argumentos.
    • Math.random(): devuelve un número aleatorio entre 0 y 1.
    • Math.round(): redondeo. Devuelve el número entero más próximo al argumento dado. Si la parte decimal es .5 o mayor se redondea por exceso. Si la parte decimal es menor que .5 se redondea por defecto.
    • Math.sqrt(): Raíz cuadrada de un número.

    Ejemplo:

    document.write(Math.PI)

    obtenemos:

    3.141592653589793
  • String

    Este objeto permite trabajar con cadenas.

    Propiedades:

    • length: longitud de la cadena.

    Métodos:

    • String.big(): aumenta el tamaño del texto, equivalente a <big>.
    • String.small(): disminuye el tamaño del texto, equivalente a <small>.
    • String.fixed(): cambia a tipo de letra a ancho fijo, equivalente a <tt>.
    • String.sup(): aplica el efecto superíndice al texto, equivalente a <sup>.
    • String.sub(): aplica el efecto subíndice al texto, equivalente a <sub>.
    • String.fontcolor("ff0000"): establece el color del texto, equivalente a <font color="ff0000">.
    • String.size(): cambia el tamaño del texto, equivalente a <font size=x>.
    • String.bold(): aumenta el peso del texto, equivalente a <b>.
    • String.italics(): aplica el tipo de letra itálica (cursiva), equivalente a <i>.
    • String.strike(): aplica el tipo de letra tachado, equivalente a <strike>.
    • String.charAt(): devuelve el caracter que haya en la posición del índice.
    • String.indexOf("t"): devuelve la posición del primer carácter indicado que exista en la cadena.
    • String.lastIndexOf(cadena, "prueba"): devuelve la posición de una subcadena dentro de la cadena principal.
    • String.search(cadena, "prueba"): igual que la anterior.
    • String.replace("prueba", "muestra"): reemplaza una cadena por otra (sólo la primera ocurrencia).
    • String.split([separador]): corta la cadena por el carácter separador y devuelve un array con las subcadenas.
    • String.link(URL): genera un enlace (link) a la URL.
    • String.toLowerCase(): convierte la cadena a minúsculas.
    • String.toUpperCase(): convierte la cadena a mayúsculas.

    Ejemplo:

    Mi_cadena = new String("Esto es una prueba")
    document.write(Mi_cadena.length)

    obtenemos:

    18

    Ejemplo:

    cadena = new String("Esto es una prueba")
    cadena_split = cadena.split(" ")
    num = cadena_split.length
    for (var i = 0; i < num; i++) {
      document.write ("sub-cadena[" + i + "]: " + cadena_split[i] + "<br />")
    }

    obtenemos:

    sub-cadena[0]: Esto
    sub-cadena[1]: es
    sub-cadena[2]: una
    sub-cadena[3]: prueba

    Ejemplo:

    cadena = new String("Esto es una prueba")
    cadena_link = cadena.link("http://sestud.uv.es/manual.esp")
    document.write(cadena_link)

    obtenemos:

    <a href="http://sestud.uv.es/manual.esp">Esto es una prueba</a>
  • RegExp

    Este objeto almacena una expresión regular (Regular Expression), patrones de búsqueda que permiten buscar coincidencias dentro de cadenas de texto muy utilizadas en muchos lenguajes de programación como Perl, comandos del shell, PHP, etc.

    Para crear un objeto RegExp disponemos de dos sintaxis: podemos utilizar el constructor new o la sintaxis simplificada. Es preferible la sintaxis simplificada, ya que si usamos new tendremos que escapar el carácter de escape (). Por ejemplo, si buscamos cualquier carácter alfanumérico, la expresión regular será:

    w+

    … con la sintaxis simplificada crearemos un objeto RegExp con la sentencia:

    exp_reg = /w+/

    … y con el constructor new la sentencia será:

    exp_reg = new RegExp("\w+")

    Métodos:

    • test(): busca coincidencias con la expresión regular dentro de la cadena dada. Si coincide devuelve TRUE, si no FALSE.

    Veamos un ejemplo de validación de campos de formularios, una de las aplicaciones más habituales de las expresiones regulares. La función de validación se invoca capturando el evento onSubmit del formulario. Si valida devuelve TRUE. Si no valida, la función de validación devuelve FALSE. Esto cancela el submit de modo que el usuario pueda corregir la entrada.

    <head>
      <script>
        <!--
        function ValidaTel(formulario) {
          //expresion regular para telefonos
          //permite numeros, espacios, + y -
          var exp_reg_tel = /^[0-9s+-]*$/
     
          //comprobar campo tel de formulario
          //usa el metodo test de RegExp
          if(!exp_reg_tel.test(formulario.tel.value)) {
            alert("TELEFONO no valida")
            output = FALSE   //no submit
          } else {
            alert("TELEFONO valida")
            output = TRUE    //submit
          }
          return output
        }
        //-->
      </script>
    </head>
    <body>
      <form method=post name="Form1" action=""
        onSubmit="return ValidaTel(this)">
        Tel: <input type="text" name="tel" /><br />
        <input type="submit" name="enviar" value="Enviar" />
      </form>
    </body>

Recursos

Artículos en la categoría "Manual de JavaScript"

  1. Manual de JavaScript: Funciones
  2. Manual de JavaScript: Estructuras de control
  3. Manual de JavaScript: Objetos del navegador
  4. Manual de JavaScript: Objetos intrínsecos
  5. Manual de JavaScript: Objetos
  6. Manual de JavaScript: Pasar variables desde JavaScript a PHP y viceversa