SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Electiva II
Clase 7
Objetos Globales de JavaScript
Ing. José Ricardo Tillero UPTAEB
Objetos Globales de JavaScript
Características
 Son los objetos que tenemos disponibles en el ámbito global (objetos
primitivos).
 Los podemos dividir en 3 grupos:
 Objetos contenedores de datos: Object, Array, Function, Boolean,
Number.
 Objetos de utilidades: Math, Date, RegExp.
 Objetos de errores: Error.
Objetos Globales de JavaScript
Object
 Object es el padre de todos los objetos JavaScript, es decir, cualquier objeto hereda de él
 Para crear un objeto vacío podemos usar:
 La notación literal : var o = {}
 La función constructora Object(): var o = new Object();
 Un objeto contiene las siguientes propiedades y métodos:
 La propiedad o.constructor con la función constructora.
 El método o.toString() que devuelve el objeto en formato texto.
 El método o.valueOf() que devuelve el valor del objeto (normalmente o).
> var o = new Object();
> o.toString()
< “[object Object]”
>
> o.valueOf() === o
< true
Objetos Globales de JavaScript
Array
 Para crear arrays podemos usar:
 La notacion literal : var a = []
 La funcion constructora Array(): var o = new Array();
 Podemos pasarle parametros al constructor Array().
 Varios parámetros: Serán asignados como elementos al array.
 Un numero: Se considerará el tamaño del array.
> var a = new Array(1,2,3,'four');
> a;
< [1, 2, 3, "four"]
>
> var a2 = new Array(5);
> a2;
< [undefined, undefined, undefined, undefined, undefined]
 Como los arrays son objetos tenemos disponibles los métodos y propiedades del padre Object()
> typeof a;
< "object"
>
> a.toString();
< "1,2,3,four"
> a.valueOf()
< [1, 2, 3, "four"]
> a.constructor
< Array()
Objetos Globales de JavaScript
Array
 Los arrays disponen de unos cuantos métodos interesantes:
 push()
 pop()
 sort()
 join()
 slice()
 splice()
> var a = [3, 5, 1, 7, 'test'];
>
> a.push('new')
>
> a
< [3, 5, 1, 7, "test", "new"]
<
> a.pop()
< "new"
> a
< [3, 5, 1, 7, "test"]
>
> var b = a.sort();
> b
< [1, 3, 5, 7, "test"]
> a
< [1, 3, 5, 7, "test"]
>
> a.join(' is not ');
< "1 is not 3 is not 5 is not 7 is not test"
>
> b = a.slice(1, 3);
< [3, 5]
> a
< [1, 3, 5, 7, "test"]
>
> b = a.splice(1, 2, 100, 101, 102);
< [3, 5]
> a
< [1, 100, 101, 102, 7, "test"]
Objetos Globales de JavaScript
Array - push()
 push() inserta elementos al final del array.
 a.push('new') es lo mismo que a[a.length] = 'new'
 push() devuelve el tamaño del array modificado.
> var sports = ['soccer', 'baseball'];
> sports
< ["soccer", "baseball"]
> sports.length
< 2
> sports.push('football', 'swimming');
< 4
> sports
< ["soccer", "baseball", "football", "swimming"]
Objetos Globales de JavaScript
Array - pop()
 pop() elimina el ultimo elemento.
 a.pop('new') es lo mismo que a.length--;
 pop() devuelve el elemento eliminado.
> var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
> myFish
< ["angel", "clown", "mandarin", "sturgeon"]
> myFish.pop();
< "sturgeon"
> myFish
< ["angel", "clown", "mandarin"]
Objetos Globales de JavaScript
Array - sort()
 Ordena el array y devuelve el array modificado.
> var fruit = ['apples', 'bananas', 'Cherries'];
> fruit
< ["apples", "bananas", "Cherries"]
> fruit.sort();
< ["Cherries", "apples", "bananas"]
>
> var scores = [1, 2, 10, 21];
> scores
< [1, 2, 10, 21]
> scores.sort()
< [1, 10, 2, 21]
>
> var numbers = [4, 2, 42, 36, 5, 1, 12, 3];
> numbers
< [4, 2, 42, 36, 5, 1, 12, 3]
> numbers.sort()
< [1, 12, 2, 3, 36, 4, 42, 5]
> numbers.sort( function(a, b) { return a - b; } );
< [1, 2, 3, 4, 5, 12, 36, 42]
Objetos Globales de JavaScript
Array - join() - slice()
 join() devuelve una cadena (string) con los valores de los elementos del array.
> var a = ['Wind', 'Rain', 'Fire'];
> a.join();
< "Wind,Rain,Fire"
> a.join(" - ");
< "Wind - Rain - Fire"
> typeof ( a.join(" - ") )
< "string“
 slice() devuelve un trozo del array sin modificar el original.
> var fruits = ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango'];
> var citrus = fruits.slice(1, 3);
> fruits
< ["Banana", "Orange", "Lemon", "Apple", "Mango"]
> citrus
< ["Orange", "Lemon"]
Objetos Globales de JavaScript
Array - join() - splice()
 splice() quita un trozo del array, lo devuelve y opcionalmente rellena el hueco con
nuevos elementos.
> var myFish = ['angel', 'clown', 'mandarin', 'surgeon'];
>
> myFish
< ["angel", "clown", "mandarin", "surgeon"]
> var removed = myFish.splice(2, 1);
>
> myFish
< ["angel", "clown", "surgeon"]
> removed
< ["mandarin"]
>
> var removed = myFish.splice(2, 0, 'drum');
> myFish
< ["angel", "clown", "drum", "surgeon"]
> removed
< []
Objetos Globales de JavaScript
Function
 Las funciones son objetos.
 Podemos crear funciones con la función constructora Function() (aunque este método no
se recomienda ya que internamente hace un eval()).
> function sum(a, b) {return a + b;};
> sum(1, 2)
< 3
> var sum = function(a, b) {return a + b;};
> sum(1, 2)
< 3
> var sum = new Function('a', 'b', 'return a + b;');
> sum(1, 2)
< 3
Objetos Globales de JavaScript
Function
 Las funciones disponen de las siguientes propiedades:
 La propiedad constructor que contiene una referencia a la función constructora
Function().
 La propiedad length que contiene el numero de parámetros que acepta la función.
 La propiedad caller (no standard) que contiene una referencia a la función que llamó a
esta función.
 La propiedad prototype que contiene un objeto.
 Sólo es útil cuando utilizamos una función como constructora.
 Todos lo objetos creados con una función constructora mantienen una referencia a
su propiedad prototype y pueden usar sus propiedades como si fueran propias.
Objetos Globales de JavaScript
Function
Ejemplos 1 Ejemplo 2
> function myfunc(a){ return a; }
> myfunc.constructor
< Function()
>
> function myfunc(a, b, c){ return true; }
> myfunc.length
< 3
>
> function A(){ return A.caller; }
> function B(){ return A(); }
> B()
< B()
> var some_obj = {
name: 'Ninja',
say: function(){
return 'I am a ' + this.name;
}
}
> function F(){}
> typeof F.prototype
< "object"
> F.prototype = some_obj;
> var obj = new F();
> obj.name
< "Ninja"
> obj.say()
< "I am a Ninja”
Objetos Globales de JavaScript
Function
 Las funciones disponen de los siguientes métodos:
 El método toString() que devuelve el código fuente de la función
 Los métodos call() y apply() que ejecutan métodos de otros objetos especificando el contexto
(especificamos un this diferente). Estos dos métodos hacen lo mismo pero el formato en que
reciben los argumentos es diferente.
toString() call() y apply()
> function myfunc(a, b, c) {return a + b + c;}
> myfunc.toString()
< "function myfunc(a, b, c) {
return a + b + c;
}“
> var some_obj = {
name: 'Ninja',
say: function(who){
return 'Haya ' + who + ', I am a ' + this.name;
}
}
> some_obj.say('Dude');
< "Haya Dude, I am a Ninja"
>
> my_obj = {name: 'Scripting guru'};
> some_obj.say.call(my_obj, 'Dude');
< "Haya Dude, I am a Scripting guru"
<
> some_obj.someMethod.apply(my_obj, ['a', 'b', 'c']);
> some_obj.someMethod.call(my_obj, 'a', 'b', 'c');
Objetos Globales de JavaScript
Function
 Las funciones disponen del objeto arguments que (además de length) tiene la
propiedad callee que contiene una referencia a la función llamada (a si misma).
> function f(){return arguments.callee;}
> f()
< f()
1 (
2 function(count){
3 if (count <= 5) {
4 console.log(count);
5 arguments.callee(++count);
6 }
7 }
8 )(1)
Objetos Globales de JavaScript
Boolean
 El objeto Boolean es un contenedor para un valor de tipo booleano.
 Podemos crear objetos Boolean con la función constructora Boolean().
> var b = new Boolean();
> typeof b
< "object"
> typeof b.valueOf()
< "boolean"
> b.valueOf()
< false
 La función Boolean usada como función normal (sin new) nos devuelve el valor pasado
como parámetro convertido a booleano
> Boolean("test")
< true
> Boolean("")
< false
> Boolean({})
< true
Objetos Globales de JavaScript
Number
 La función Number() puede ser usada:
 Cómo una función normal para convertir valores a número.
 Cómo una función constructora (con new) para crear objetos.
 Los objetos número disponen de los métodos: toFixed(), toPrecision() y toExponential().
> var n = new Number(123.456)
> n.toFixed(1)
< "123.5"
>
> (12345).toExponential()
< "1.2345e+4“
 El método toString() de un objeto numero nos permite transformar un numero a una base determinada.
> var n = new Number(255);
> n.toString();
< "255"
> n.toString(10);
< "255"
> n.toString(16);
< "ff"
> (3).toString(2);
< "11"
> (3).toString(10);
< "3"
Objetos Globales de JavaScript
String
 Podemos crear objetos String con la función constructora String().
 Un objeto String NO es un dato de tipo primitivo string (valueOf()).
> var primitive = 'Hello';
> typeof primitive;
< "string"
> var obj = new String('world');
> typeof obj;
< "object"
>
> Boolean("")
< false
> Boolean(new String(""))
< true
 Un objeto string es parecido a un array de caracteres:
 Cada carácter tiene una posición indexada.
 Tiene disponible la propiedad length.
> obj[0]
< "w"
> obj[4]
< "d"
> obj.length
< 5
Objetos Globales de JavaScript
String
 Aunque los métodos pertenezcan al objeto String, podemos utilizarlos también directamente en datos de
tipo primitivo string (se crea el objeto internamente).
> "potato".length
< 6
> "tomato"[0]
< "t"
> "potato"["potato".length - 1]
< "o«
 Los objetos string disponen de los siguientes métodos:
 toUpperCase() devuelve el string convertido a mayúsculas.
 toLowerCase() devuelve el string convertido a minúsculas.
 charAt() devuelve el carácter encontrado en la posición indicada.
 indexOf() busca una cadena de texto en el string y devuelve la posición donde la encuentra. Si no
encuentra nada devuelve -1-
 lastIndexOf() empieza la búsqueda desde el final de la cadena. Si no encuentra nada devuelve -1.
Objetos Globales de JavaScript
String
 Por tanto la manera de correcta de chequear si existe una cadena de texto en otra es:
if (s.toLowerCase().indexOf('couch') !== -1 ) {...}
 slice() devuelve un trozo de la cadena de texto.
 split() transforma el string en un array utilizando un string como separador.
 concat() une strings.
var s = new String("Couch potato");
> s.toUpperCase()
< "COUCH POTATO"
> s.toLowerCase()
< "couch potato"
> s.charAt(0);
< "C"
> s.indexOf('o')
< 1
> s.lastIndexOf('o')
< 11
> s.slice(1, 5)
< "ouch"
> s.split(" ")
< ["Couch", "potato"]
> s.concat("es")
< "Couch potatoes"
Objetos Globales de JavaScript
Math
 Math es un objeto con propiedades y métodos para usos matemáticos No es constructor
de otros objetos.
 Algunos métodos interesantes de Math son:
 random() genera números aleatorios entre 0 y 1.
 round(), floor() y ceil() para redondear números.
 min() y max() devuelven el mínimo y el máximo de una serie de números pasados como
parámetros.
 pow() y sqrt() devuelve la potencia y la raíz cuadrada respectivamente.
Objetos Globales de JavaScript
Date
 Date() es una función constructora que crea objetos Date.
 Podemos crear objetos Date nuevo pasándole:
 Nada (tomará por defecto la fecha actual).
 Una fecha en formato texto.
 Valores separados que representan: Año, Mes (0-11), Día (1-31), Hora (0-23), Minutos (0-59),
Segundos(0-59) y Milisegundos (0-999).
 Un valor timestamp.
 Ejemplo (Firebug muestra el resultado del método toString sobre un objeto date):
> new Date()
< Tue Jan 08 2008 01:10:42 GMT-0800 (Pacific Standard Time)
> new Date('2009 11 12')
< Thu Nov 12 2009 00:00:00 GMT-0800 (Pacific Standard Time)
> new Date(2008, 0, 1, 17, 05, 03, 120)
< Tue Jan 01 2008 17:05:03 GMT-0800 (Pacific Standard Time)
> new Date(1199865795109)
< Wed Jan 09 2008 00:03:15 GMT-0800 (Pacific Standard Time)
Objetos Globales de JavaScript
Date
 Algunos métodos para trabajar con objetos Date son:
 setMonth() y getMonth() escriben y leen el mes en un objeto date respectivamente (lo mismo hay para year,
day, hours, minutes, etc…).
 parse() dado un string, devuelve su timestamp.
 UTC() produce un timestamp dados un año, mes, dia, etc..
 toDateString() devuelve el contenido de un objeto date en formato americano.
> var d = new Date();
> d.toString();
< "Wed Jan 09 2008 00:26:39 GMT-0800 (Pacific Standard Time)"
> d.setMonth(2);
< 1205051199562
> d.toString();
< "Sun Mar 09 2008 00:26:39 GMT-0800 (Pacific Standard Time)"
> d.getMonth();
< 2
>
> Date.parse('Jan 1, 2008')
< 1199174400000
> Date.UTC(2008, 0, 1)
< 1199145600000
>
> var d = new Date(2012, 5, 20);
> d.getDay();
< 3
> d.toDateString();
< "Wed Jun 20 2012"

Weitere ähnliche Inhalte

Was ist angesagt?

An Introduction To Java Profiling
An Introduction To Java ProfilingAn Introduction To Java Profiling
An Introduction To Java Profiling
schlebu
 

Was ist angesagt? (20)

Python - Dicionários
Python - DicionáriosPython - Dicionários
Python - Dicionários
 
주니어의 쿠버네티스 생태계에서 살아남기
주니어의 쿠버네티스 생태계에서 살아남기주니어의 쿠버네티스 생태계에서 살아남기
주니어의 쿠버네티스 생태계에서 살아남기
 
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
 
Aula 02 - JavaScript: Arrays
Aula 02 - JavaScript: ArraysAula 02 - JavaScript: Arrays
Aula 02 - JavaScript: Arrays
 
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
 
Docker swarm
Docker swarmDocker swarm
Docker swarm
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해
 
Selenium Locators
Selenium LocatorsSelenium Locators
Selenium Locators
 
검색엔진이 데이터를 다루는 법 김종민
검색엔진이 데이터를 다루는 법 김종민검색엔진이 데이터를 다루는 법 김종민
검색엔진이 데이터를 다루는 법 김종민
 
Java Logging
Java LoggingJava Logging
Java Logging
 
.NET Core, ASP.NET Core Course, Session 6
.NET Core, ASP.NET Core Course, Session 6.NET Core, ASP.NET Core Course, Session 6
.NET Core, ASP.NET Core Course, Session 6
 
java 8 람다식 소개와 의미 고찰
java 8 람다식 소개와 의미 고찰java 8 람다식 소개와 의미 고찰
java 8 람다식 소개와 의미 고찰
 
An Introduction To Java Profiling
An Introduction To Java ProfilingAn Introduction To Java Profiling
An Introduction To Java Profiling
 
[MeetUp][2nd] 알아두면 쓸모있는 테라폼
[MeetUp][2nd] 알아두면 쓸모있는 테라폼[MeetUp][2nd] 알아두면 쓸모있는 테라폼
[MeetUp][2nd] 알아두면 쓸모있는 테라폼
 
Docker Swarm for Beginner
Docker Swarm for BeginnerDocker Swarm for Beginner
Docker Swarm for Beginner
 
Gatling overview
Gatling overviewGatling overview
Gatling overview
 
Vue.js Getting Started
Vue.js Getting StartedVue.js Getting Started
Vue.js Getting Started
 
Introduction to Apache solr
Introduction to Apache solrIntroduction to Apache solr
Introduction to Apache solr
 
React + Redux for Web Developers
React + Redux for Web DevelopersReact + Redux for Web Developers
React + Redux for Web Developers
 
What's new in selenium 4
What's new in selenium 4What's new in selenium 4
What's new in selenium 4
 

Ähnlich wie Clase 7 objetos globales de javaScript

Clase6 collections
Clase6 collectionsClase6 collections
Clase6 collections
jorg_marq
 

Ähnlich wie Clase 7 objetos globales de javaScript (20)

Comandos r
Comandos rComandos r
Comandos r
 
Clase 5 funciones en javaScript
Clase 5 funciones en javaScriptClase 5 funciones en javaScript
Clase 5 funciones en javaScript
 
Separata java script
Separata java scriptSeparata java script
Separata java script
 
05. Creando e implementando objetos y métodos
05. Creando e implementando objetos y métodos05. Creando e implementando objetos y métodos
05. Creando e implementando objetos y métodos
 
Jquery parte 1
Jquery parte 1Jquery parte 1
Jquery parte 1
 
U5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfU5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdf
 
Trabajo de consulta
Trabajo de consultaTrabajo de consulta
Trabajo de consulta
 
Pf con scala
Pf con scalaPf con scala
Pf con scala
 
Clase6 collections
Clase6 collectionsClase6 collections
Clase6 collections
 
Clase 6 objetos de javaScript
Clase 6 objetos de javaScriptClase 6 objetos de javaScript
Clase 6 objetos de javaScript
 
P2C2 Introducción a JEE5
P2C2 Introducción a JEE5P2C2 Introducción a JEE5
P2C2 Introducción a JEE5
 
Bases de Datos en Java - Intro a JDBC
Bases de Datos en Java - Intro a JDBCBases de Datos en Java - Intro a JDBC
Bases de Datos en Java - Intro a JDBC
 
Arreglos en C++
Arreglos en C++Arreglos en C++
Arreglos en C++
 
Codigo
CodigoCodigo
Codigo
 
Metodo constructor de una clase JAVA
Metodo constructor de una clase JAVAMetodo constructor de una clase JAVA
Metodo constructor de una clase JAVA
 
Charla evento TestingUY 2015 - Property-Based Testing Usando Quickcheck, o có...
Charla evento TestingUY 2015 - Property-Based Testing Usando Quickcheck, o có...Charla evento TestingUY 2015 - Property-Based Testing Usando Quickcheck, o có...
Charla evento TestingUY 2015 - Property-Based Testing Usando Quickcheck, o có...
 
Property Based Testing usando QuickCheck
Property Based Testing usando QuickCheckProperty Based Testing usando QuickCheck
Property Based Testing usando QuickCheck
 
Django y Python para todos
Django y Python para todosDjango y Python para todos
Django y Python para todos
 
Practica13
Practica13Practica13
Practica13
 
PRACTICA 13 ALICE
PRACTICA 13 ALICEPRACTICA 13 ALICE
PRACTICA 13 ALICE
 

Mehr von José Ricardo Tillero Giménez

Mehr von José Ricardo Tillero Giménez (20)

PLAN DE EVALUACIÓN REDES AVANZADAS II-2021
PLAN DE EVALUACIÓN REDES AVANZADAS II-2021PLAN DE EVALUACIÓN REDES AVANZADAS II-2021
PLAN DE EVALUACIÓN REDES AVANZADAS II-2021
 
Guía Ejercicios SQL
Guía Ejercicios SQLGuía Ejercicios SQL
Guía Ejercicios SQL
 
Guía 3 Ejercicios de Normalización de Base de Datos
Guía 3 Ejercicios de Normalización de Base de DatosGuía 3 Ejercicios de Normalización de Base de Datos
Guía 3 Ejercicios de Normalización de Base de Datos
 
Guía 1 Ejercicios MR
Guía 1 Ejercicios MRGuía 1 Ejercicios MR
Guía 1 Ejercicios MR
 
Guía 2 Ejercicios de Normalización de Base de Datos
Guía 2 Ejercicios de Normalización de Base de DatosGuía 2 Ejercicios de Normalización de Base de Datos
Guía 2 Ejercicios de Normalización de Base de Datos
 
Guía 3 Ejercicios MER Extendido
Guía 3 Ejercicios MER ExtendidoGuía 3 Ejercicios MER Extendido
Guía 3 Ejercicios MER Extendido
 
Guía 2 Ejercicios MER
Guía 2 Ejercicios MERGuía 2 Ejercicios MER
Guía 2 Ejercicios MER
 
Guía 1 Ejercicios MER
Guía 1 Ejercicios MERGuía 1 Ejercicios MER
Guía 1 Ejercicios MER
 
Plan de evaluación BD2021
Plan de evaluación BD2021Plan de evaluación BD2021
Plan de evaluación BD2021
 
Perfil Docente y Asesoría
Perfil Docente y AsesoríaPerfil Docente y Asesoría
Perfil Docente y Asesoría
 
Planificación BD2021
Planificación BD2021Planificación BD2021
Planificación BD2021
 
UNIDAD 1. El mundo de las Bases de Datos y los SMBD
UNIDAD 1. El mundo de las Bases de Datos y los SMBDUNIDAD 1. El mundo de las Bases de Datos y los SMBD
UNIDAD 1. El mundo de las Bases de Datos y los SMBD
 
NOTAS FINALES DE REDES AVANZADAS IIN4301
NOTAS FINALES DE REDES AVANZADAS IIN4301NOTAS FINALES DE REDES AVANZADAS IIN4301
NOTAS FINALES DE REDES AVANZADAS IIN4301
 
NOTAS FINALES ELECTIVA II IN2102
NOTAS FINALES ELECTIVA II IN2102NOTAS FINALES ELECTIVA II IN2102
NOTAS FINALES ELECTIVA II IN2102
 
NOTAS FINALES ELECTIVA II IN2101
NOTAS FINALES ELECTIVA II IN2101NOTAS FINALES ELECTIVA II IN2101
NOTAS FINALES ELECTIVA II IN2101
 
Notas definitivas per base de datos
Notas definitivas per base de datosNotas definitivas per base de datos
Notas definitivas per base de datos
 
Clase 6 VLAN
Clase 6 VLANClase 6 VLAN
Clase 6 VLAN
 
Guía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRP
Guía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRPGuía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRP
Guía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRP
 
Guía CISCO de redistribución de protocolos de ruteo
Guía CISCO de redistribución de protocolos de ruteoGuía CISCO de redistribución de protocolos de ruteo
Guía CISCO de redistribución de protocolos de ruteo
 
Manual Basico de jQuery
Manual Basico de jQueryManual Basico de jQuery
Manual Basico de jQuery
 

Kürzlich hochgeladen

La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
JonathanCovena1
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
El Fortí
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Francisco158360
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
lupitavic
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
RigoTito
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
MiNeyi1
 

Kürzlich hochgeladen (20)

La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdf
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
ACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJO
ACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJOACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJO
ACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJO
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonables
 

Clase 7 objetos globales de javaScript

  • 1. Electiva II Clase 7 Objetos Globales de JavaScript Ing. José Ricardo Tillero UPTAEB
  • 2. Objetos Globales de JavaScript Características  Son los objetos que tenemos disponibles en el ámbito global (objetos primitivos).  Los podemos dividir en 3 grupos:  Objetos contenedores de datos: Object, Array, Function, Boolean, Number.  Objetos de utilidades: Math, Date, RegExp.  Objetos de errores: Error.
  • 3. Objetos Globales de JavaScript Object  Object es el padre de todos los objetos JavaScript, es decir, cualquier objeto hereda de él  Para crear un objeto vacío podemos usar:  La notación literal : var o = {}  La función constructora Object(): var o = new Object();  Un objeto contiene las siguientes propiedades y métodos:  La propiedad o.constructor con la función constructora.  El método o.toString() que devuelve el objeto en formato texto.  El método o.valueOf() que devuelve el valor del objeto (normalmente o). > var o = new Object(); > o.toString() < “[object Object]” > > o.valueOf() === o < true
  • 4. Objetos Globales de JavaScript Array  Para crear arrays podemos usar:  La notacion literal : var a = []  La funcion constructora Array(): var o = new Array();  Podemos pasarle parametros al constructor Array().  Varios parámetros: Serán asignados como elementos al array.  Un numero: Se considerará el tamaño del array. > var a = new Array(1,2,3,'four'); > a; < [1, 2, 3, "four"] > > var a2 = new Array(5); > a2; < [undefined, undefined, undefined, undefined, undefined]  Como los arrays son objetos tenemos disponibles los métodos y propiedades del padre Object() > typeof a; < "object" > > a.toString(); < "1,2,3,four" > a.valueOf() < [1, 2, 3, "four"] > a.constructor < Array()
  • 5. Objetos Globales de JavaScript Array  Los arrays disponen de unos cuantos métodos interesantes:  push()  pop()  sort()  join()  slice()  splice() > var a = [3, 5, 1, 7, 'test']; > > a.push('new') > > a < [3, 5, 1, 7, "test", "new"] < > a.pop() < "new" > a < [3, 5, 1, 7, "test"] > > var b = a.sort(); > b < [1, 3, 5, 7, "test"] > a < [1, 3, 5, 7, "test"] > > a.join(' is not '); < "1 is not 3 is not 5 is not 7 is not test" > > b = a.slice(1, 3); < [3, 5] > a < [1, 3, 5, 7, "test"] > > b = a.splice(1, 2, 100, 101, 102); < [3, 5] > a < [1, 100, 101, 102, 7, "test"]
  • 6. Objetos Globales de JavaScript Array - push()  push() inserta elementos al final del array.  a.push('new') es lo mismo que a[a.length] = 'new'  push() devuelve el tamaño del array modificado. > var sports = ['soccer', 'baseball']; > sports < ["soccer", "baseball"] > sports.length < 2 > sports.push('football', 'swimming'); < 4 > sports < ["soccer", "baseball", "football", "swimming"]
  • 7. Objetos Globales de JavaScript Array - pop()  pop() elimina el ultimo elemento.  a.pop('new') es lo mismo que a.length--;  pop() devuelve el elemento eliminado. > var myFish = ['angel', 'clown', 'mandarin', 'sturgeon']; > myFish < ["angel", "clown", "mandarin", "sturgeon"] > myFish.pop(); < "sturgeon" > myFish < ["angel", "clown", "mandarin"]
  • 8. Objetos Globales de JavaScript Array - sort()  Ordena el array y devuelve el array modificado. > var fruit = ['apples', 'bananas', 'Cherries']; > fruit < ["apples", "bananas", "Cherries"] > fruit.sort(); < ["Cherries", "apples", "bananas"] > > var scores = [1, 2, 10, 21]; > scores < [1, 2, 10, 21] > scores.sort() < [1, 10, 2, 21] > > var numbers = [4, 2, 42, 36, 5, 1, 12, 3]; > numbers < [4, 2, 42, 36, 5, 1, 12, 3] > numbers.sort() < [1, 12, 2, 3, 36, 4, 42, 5] > numbers.sort( function(a, b) { return a - b; } ); < [1, 2, 3, 4, 5, 12, 36, 42]
  • 9. Objetos Globales de JavaScript Array - join() - slice()  join() devuelve una cadena (string) con los valores de los elementos del array. > var a = ['Wind', 'Rain', 'Fire']; > a.join(); < "Wind,Rain,Fire" > a.join(" - "); < "Wind - Rain - Fire" > typeof ( a.join(" - ") ) < "string“  slice() devuelve un trozo del array sin modificar el original. > var fruits = ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango']; > var citrus = fruits.slice(1, 3); > fruits < ["Banana", "Orange", "Lemon", "Apple", "Mango"] > citrus < ["Orange", "Lemon"]
  • 10. Objetos Globales de JavaScript Array - join() - splice()  splice() quita un trozo del array, lo devuelve y opcionalmente rellena el hueco con nuevos elementos. > var myFish = ['angel', 'clown', 'mandarin', 'surgeon']; > > myFish < ["angel", "clown", "mandarin", "surgeon"] > var removed = myFish.splice(2, 1); > > myFish < ["angel", "clown", "surgeon"] > removed < ["mandarin"] > > var removed = myFish.splice(2, 0, 'drum'); > myFish < ["angel", "clown", "drum", "surgeon"] > removed < []
  • 11. Objetos Globales de JavaScript Function  Las funciones son objetos.  Podemos crear funciones con la función constructora Function() (aunque este método no se recomienda ya que internamente hace un eval()). > function sum(a, b) {return a + b;}; > sum(1, 2) < 3 > var sum = function(a, b) {return a + b;}; > sum(1, 2) < 3 > var sum = new Function('a', 'b', 'return a + b;'); > sum(1, 2) < 3
  • 12. Objetos Globales de JavaScript Function  Las funciones disponen de las siguientes propiedades:  La propiedad constructor que contiene una referencia a la función constructora Function().  La propiedad length que contiene el numero de parámetros que acepta la función.  La propiedad caller (no standard) que contiene una referencia a la función que llamó a esta función.  La propiedad prototype que contiene un objeto.  Sólo es útil cuando utilizamos una función como constructora.  Todos lo objetos creados con una función constructora mantienen una referencia a su propiedad prototype y pueden usar sus propiedades como si fueran propias.
  • 13. Objetos Globales de JavaScript Function Ejemplos 1 Ejemplo 2 > function myfunc(a){ return a; } > myfunc.constructor < Function() > > function myfunc(a, b, c){ return true; } > myfunc.length < 3 > > function A(){ return A.caller; } > function B(){ return A(); } > B() < B() > var some_obj = { name: 'Ninja', say: function(){ return 'I am a ' + this.name; } } > function F(){} > typeof F.prototype < "object" > F.prototype = some_obj; > var obj = new F(); > obj.name < "Ninja" > obj.say() < "I am a Ninja”
  • 14. Objetos Globales de JavaScript Function  Las funciones disponen de los siguientes métodos:  El método toString() que devuelve el código fuente de la función  Los métodos call() y apply() que ejecutan métodos de otros objetos especificando el contexto (especificamos un this diferente). Estos dos métodos hacen lo mismo pero el formato en que reciben los argumentos es diferente. toString() call() y apply() > function myfunc(a, b, c) {return a + b + c;} > myfunc.toString() < "function myfunc(a, b, c) { return a + b + c; }“ > var some_obj = { name: 'Ninja', say: function(who){ return 'Haya ' + who + ', I am a ' + this.name; } } > some_obj.say('Dude'); < "Haya Dude, I am a Ninja" > > my_obj = {name: 'Scripting guru'}; > some_obj.say.call(my_obj, 'Dude'); < "Haya Dude, I am a Scripting guru" < > some_obj.someMethod.apply(my_obj, ['a', 'b', 'c']); > some_obj.someMethod.call(my_obj, 'a', 'b', 'c');
  • 15. Objetos Globales de JavaScript Function  Las funciones disponen del objeto arguments que (además de length) tiene la propiedad callee que contiene una referencia a la función llamada (a si misma). > function f(){return arguments.callee;} > f() < f() 1 ( 2 function(count){ 3 if (count <= 5) { 4 console.log(count); 5 arguments.callee(++count); 6 } 7 } 8 )(1)
  • 16. Objetos Globales de JavaScript Boolean  El objeto Boolean es un contenedor para un valor de tipo booleano.  Podemos crear objetos Boolean con la función constructora Boolean(). > var b = new Boolean(); > typeof b < "object" > typeof b.valueOf() < "boolean" > b.valueOf() < false  La función Boolean usada como función normal (sin new) nos devuelve el valor pasado como parámetro convertido a booleano > Boolean("test") < true > Boolean("") < false > Boolean({}) < true
  • 17. Objetos Globales de JavaScript Number  La función Number() puede ser usada:  Cómo una función normal para convertir valores a número.  Cómo una función constructora (con new) para crear objetos.  Los objetos número disponen de los métodos: toFixed(), toPrecision() y toExponential(). > var n = new Number(123.456) > n.toFixed(1) < "123.5" > > (12345).toExponential() < "1.2345e+4“  El método toString() de un objeto numero nos permite transformar un numero a una base determinada. > var n = new Number(255); > n.toString(); < "255" > n.toString(10); < "255" > n.toString(16); < "ff" > (3).toString(2); < "11" > (3).toString(10); < "3"
  • 18. Objetos Globales de JavaScript String  Podemos crear objetos String con la función constructora String().  Un objeto String NO es un dato de tipo primitivo string (valueOf()). > var primitive = 'Hello'; > typeof primitive; < "string" > var obj = new String('world'); > typeof obj; < "object" > > Boolean("") < false > Boolean(new String("")) < true  Un objeto string es parecido a un array de caracteres:  Cada carácter tiene una posición indexada.  Tiene disponible la propiedad length. > obj[0] < "w" > obj[4] < "d" > obj.length < 5
  • 19. Objetos Globales de JavaScript String  Aunque los métodos pertenezcan al objeto String, podemos utilizarlos también directamente en datos de tipo primitivo string (se crea el objeto internamente). > "potato".length < 6 > "tomato"[0] < "t" > "potato"["potato".length - 1] < "o«  Los objetos string disponen de los siguientes métodos:  toUpperCase() devuelve el string convertido a mayúsculas.  toLowerCase() devuelve el string convertido a minúsculas.  charAt() devuelve el carácter encontrado en la posición indicada.  indexOf() busca una cadena de texto en el string y devuelve la posición donde la encuentra. Si no encuentra nada devuelve -1-  lastIndexOf() empieza la búsqueda desde el final de la cadena. Si no encuentra nada devuelve -1.
  • 20. Objetos Globales de JavaScript String  Por tanto la manera de correcta de chequear si existe una cadena de texto en otra es: if (s.toLowerCase().indexOf('couch') !== -1 ) {...}  slice() devuelve un trozo de la cadena de texto.  split() transforma el string en un array utilizando un string como separador.  concat() une strings. var s = new String("Couch potato"); > s.toUpperCase() < "COUCH POTATO" > s.toLowerCase() < "couch potato" > s.charAt(0); < "C" > s.indexOf('o') < 1 > s.lastIndexOf('o') < 11 > s.slice(1, 5) < "ouch" > s.split(" ") < ["Couch", "potato"] > s.concat("es") < "Couch potatoes"
  • 21. Objetos Globales de JavaScript Math  Math es un objeto con propiedades y métodos para usos matemáticos No es constructor de otros objetos.  Algunos métodos interesantes de Math son:  random() genera números aleatorios entre 0 y 1.  round(), floor() y ceil() para redondear números.  min() y max() devuelven el mínimo y el máximo de una serie de números pasados como parámetros.  pow() y sqrt() devuelve la potencia y la raíz cuadrada respectivamente.
  • 22. Objetos Globales de JavaScript Date  Date() es una función constructora que crea objetos Date.  Podemos crear objetos Date nuevo pasándole:  Nada (tomará por defecto la fecha actual).  Una fecha en formato texto.  Valores separados que representan: Año, Mes (0-11), Día (1-31), Hora (0-23), Minutos (0-59), Segundos(0-59) y Milisegundos (0-999).  Un valor timestamp.  Ejemplo (Firebug muestra el resultado del método toString sobre un objeto date): > new Date() < Tue Jan 08 2008 01:10:42 GMT-0800 (Pacific Standard Time) > new Date('2009 11 12') < Thu Nov 12 2009 00:00:00 GMT-0800 (Pacific Standard Time) > new Date(2008, 0, 1, 17, 05, 03, 120) < Tue Jan 01 2008 17:05:03 GMT-0800 (Pacific Standard Time) > new Date(1199865795109) < Wed Jan 09 2008 00:03:15 GMT-0800 (Pacific Standard Time)
  • 23. Objetos Globales de JavaScript Date  Algunos métodos para trabajar con objetos Date son:  setMonth() y getMonth() escriben y leen el mes en un objeto date respectivamente (lo mismo hay para year, day, hours, minutes, etc…).  parse() dado un string, devuelve su timestamp.  UTC() produce un timestamp dados un año, mes, dia, etc..  toDateString() devuelve el contenido de un objeto date en formato americano. > var d = new Date(); > d.toString(); < "Wed Jan 09 2008 00:26:39 GMT-0800 (Pacific Standard Time)" > d.setMonth(2); < 1205051199562 > d.toString(); < "Sun Mar 09 2008 00:26:39 GMT-0800 (Pacific Standard Time)" > d.getMonth(); < 2 > > Date.parse('Jan 1, 2008') < 1199174400000 > Date.UTC(2008, 0, 1) < 1199145600000 > > var d = new Date(2012, 5, 20); > d.getDay(); < 3 > d.toDateString(); < "Wed Jun 20 2012"