Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Clase 3 Expresiones y Objetos(parte 1)

Clase 3 Expresiones y Objetos(parte 1)

Se culmina con expresiones y se comienza con la parte de objetos

Marcos Grillo

November 04, 2014
Tweet

More Decks by Marcos Grillo

Other Decks in Programming

Transcript

  1. Conversiones de tipos Expresiones Objetos 1 Conversiones de tipos Conversiones

    de tipos 2 Expresiones Expresiones en JAVASCRIPT 3 Objetos Objetos (Introducción) Obtención y modificación de propiedades Objeto Global
  2. Conversiones de tipos Expresiones Objetos Conversiones de tipos Conversiones de

    tipos Todo aquello que no sea undefined, null, 0, -0, NaN o ”” se considera como cierto, o true. Es decir, si tenemos el condicional: 1 i f (o)
  3. Conversiones de tipos Expresiones Objetos Conversiones de tipos Conversiones de

    tipos Todo aquello que no sea undefined, null, 0, -0, NaN o ”” se considera como cierto, o true. Es decir, si tenemos el condicional: 1 i f (o) Mientras el valor de o esté definido y no sea ninguno de los valores ya mencionados, es cierto.
  4. Conversiones de tipos Expresiones Objetos Conversiones de tipos Conversiones de

    tipos JAVASCRIPT automáticamente convierte las variables a los tipos que necesita, por ejemplo: 1 10 + " string " ; // devuelve "10 string " 2 "7" * "5" ; // devuelve 35 3 "7" + 5; // Devuelve "75" < - - - OJO 4 1 + "x" ; // NaN, x no se puede convertir
  5. Conversiones de tipos Expresiones Objetos Conversiones de tipos Conversiones de

    tipos JAVASCRIPT automáticamente convierte las variables a los tipos que necesita, por ejemplo: 1 10 + " string " ; // devuelve "10 string " 2 "7" * "5" ; // devuelve 35 3 "7" + 5; // Devuelve "75" < - - - OJO 4 1 + "x" ; // NaN, x no se puede convertir Se pueden hacer conversiones explícitamente con Number(), String(), Object() y Boolean(): 1 10 + Number( "4" ) ; // devuelve 14 2 Object ( true ) ; // devuelve new Boolean (3) 3 Boolean ( " " ) ; // devuelve objeto false
  6. Conversiones de tipos Expresiones Objetos Conversiones de tipos Conversiones de

    tipos Hay funciones para llevar de un string a un número: 1 parseInt ( "3" ) ; // 3 2 parseFloat ( " 3.14 " ) ; // 3.14 3 parseInt ( "111010" , 2) ; // 58
  7. Conversiones de tipos Expresiones Objetos Conversiones de tipos Conversiones de

    tipos Hay funciones para llevar de un string a un número: 1 parseInt ( "3" ) ; // 3 2 parseFloat ( " 3.14 " ) ; // 3.14 3 parseInt ( "111010" , 2) ; // 58 Hay funciones para llevar números a String, como por ejemplo: 1 var n = 58; 2 n . toString (2) ; // "111010" 3 var x = 123.2; 4 x . toFixed (0) ; // "123" 5 x . toFixed (3) ; // "123.200" 6 x . toExponential (3) ; // "1.232e+2"
  8. Conversiones de tipos Expresiones Objetos Expresiones en JAVASCRIPT Expresiones Una

    expresión es una frase escrita en JAVASCRIPT que un interpretador pueda evaluar a un valor.
  9. Conversiones de tipos Expresiones Objetos Expresiones en JAVASCRIPT Expresiones Una

    expresión es una frase escrita en JAVASCRIPT que un interpretador pueda evaluar a un valor. Expresiones primarias: Valores primitivos, palabras reservadas, variables 1 " hola " 2 1.234 3 true 4 undefined
  10. Conversiones de tipos Expresiones Objetos Expresiones en JAVASCRIPT Expresiones Una

    expresión es una frase escrita en JAVASCRIPT que un interpretador pueda evaluar a un valor. Expresiones primarias: Valores primitivos, palabras reservadas, variables 1 " hola " 2 1.234 3 true 4 undefined Inicializadores 1 var online = 1; 2 var x = [ 1 , 2 , 3 ] ; 3 var y = { "p1" : { "nombre" : " valor " } } ;
  11. Conversiones de tipos Expresiones Objetos Expresiones en JAVASCRIPT Expresiones Definición

    de funciones 1 function f ( ) { } Acceso a propiedades 1 y . p1 ; 2 x [ 0 ] ;
  12. Conversiones de tipos Expresiones Objetos Expresiones en JAVASCRIPT Expresiones Definición

    de funciones 1 function f ( ) { } Acceso a propiedades 1 y . p1 ; 2 x [ 0 ] ; Invocaciones 1 console . log ( ) ;
  13. Conversiones de tipos Expresiones Objetos Expresiones en JAVASCRIPT Expresiones Expresiones

    aritméticas 1 x + y ; Expresiones relacionales 1 x == y ; 2 x === y ;
  14. Conversiones de tipos Expresiones Objetos Expresiones en JAVASCRIPT Expresiones Expresiones

    aritméticas 1 x + y ; Expresiones relacionales 1 x == y ; 2 x === y ; Expresiones de asignación 1 x = y ;
  15. Conversiones de tipos Expresiones Objetos Expresiones en JAVASCRIPT Expresiones Creación

    de objetos 1 new Object ( ) ; Evaluación 1 eval ( " console . log ( ' hola mundo ' ) " ) ;
  16. Conversiones de tipos Expresiones Objetos Expresiones en JAVASCRIPT Expresiones Creación

    de objetos 1 new Object ( ) ; Evaluación 1 eval ( " console . log ( ' hola mundo ' ) " ) ; Algunos operadores:   ++ – - + ~ ! delete typeof void instanceof in << >> < <= == === != !== & && | || *= /= %= += -=
  17. Conversiones de tipos Expresiones Objetos Objetos (Introducción) Es una colección

    no ordenada de propiedades que tienen un nombre y un valor
  18. Conversiones de tipos Expresiones Objetos Objetos (Introducción) Es una colección

    no ordenada de propiedades que tienen un nombre y un valor Estas propiedades pueden ser tipos básicos, objetos o funciones
  19. Conversiones de tipos Expresiones Objetos Objetos (Introducción) Es una colección

    no ordenada de propiedades que tienen un nombre y un valor Estas propiedades pueden ser tipos básicos, objetos o funciones En Javascript toda propiedad definida como función dentro de un objeto es llamada método
  20. Conversiones de tipos Expresiones Objetos Objetos (Introducción) Es una colección

    no ordenada de propiedades que tienen un nombre y un valor Estas propiedades pueden ser tipos básicos, objetos o funciones En Javascript toda propiedad definida como función dentro de un objeto es llamada método Se puede definir un objeto directamente con las propiedades que se desea tener 1 var x = { prop1 :3 , func : function ( param ) { console . log ( param ) ; } } ; 2 x . func ( " Holis " ) ;
  21. Conversiones de tipos Expresiones Objetos Objetos (Introducción) O se puede

    utilizar new o con Object.create() Ya vimos que un String es un valor básico, ¿porqué se pueden hacer llamadas a métodos?, tal como: 1 var s = " hola mundo" ; 2 var x = s . match ( / \w+/g) ;
  22. Conversiones de tipos Expresiones Objetos Objetos (Introducción) O se puede

    utilizar new o con Object.create() Ya vimos que un String es un valor básico, ¿porqué se pueden hacer llamadas a métodos?, tal como: 1 var s = " hola mundo" ; 2 var x = s . match ( / \w+/g) ; Javascript crea un nuevo objeto con String() y a ese se le llama el método respectivo.
  23. Conversiones de tipos Expresiones Objetos Objetos (Introducción) O se puede

    utilizar new o con Object.create() Ya vimos que un String es un valor básico, ¿porqué se pueden hacer llamadas a métodos?, tal como: 1 var s = " hola mundo" ; 2 var x = s . match ( / \w+/g) ; Javascript crea un nuevo objeto con String() y a ese se le llama el método respectivo. Hay objetos para cada tipo básico: String(), Number(), Boolean()
  24. Conversiones de tipos Expresiones Objetos Objetos (Introducción) Los objetos se

    manejan por referencia por lo que dos variables declaradas como objetos son SIEMPRE distintos, así tengan las mismas propiedades y los valores de las propiedades sean los mismos 1 var x = { prop1 : 5 } ; 2 var y = { prop1 : 5 } ; 3 x === y ; // false
  25. Conversiones de tipos Expresiones Objetos Objetos (Introducción) Los objetos se

    manejan por referencia por lo que dos variables declaradas como objetos son SIEMPRE distintos, así tengan las mismas propiedades y los valores de las propiedades sean los mismos 1 var x = { prop1 : 5 } ; 2 var y = { prop1 : 5 } ; 3 x === y ; // false Los objetos en Javascript son dinámicos, se pueden crear y eliminar propiedades en cualquier momento
  26. Conversiones de tipos Expresiones Objetos Objetos (Introducción) Los objetos se

    manejan por referencia por lo que dos variables declaradas como objetos son SIEMPRE distintos, así tengan las mismas propiedades y los valores de las propiedades sean los mismos 1 var x = { prop1 : 5 } ; 2 var y = { prop1 : 5 } ; 3 x === y ; // false Los objetos en Javascript son dinámicos, se pueden crear y eliminar propiedades en cualquier momento Se usa la función delete para borrar una propiedad de un objeto 1 var x = { prop1 : 5 , func : function ( param ) { console . log ( param ) ; } } ; 2 x ; // presionen enter 3 delete ( x . prop1 ) ; 4 x ; // presionen enter
  27. Conversiones de tipos Expresiones Objetos Obtención y modificación de propiedades

    Se puede utilizar el ’.’ para acceder a una propiedad de un objeto, pero adicionalmente se pueden usar los corchetes (’[]’) como un arreglo asociativo 1 var x = { prop1 : 5 , func : function ( param ) { console . log ( param ) ; } } ; 2 x . prop1 ; 3 x [ ' prop1 ' ] ;
  28. Conversiones de tipos Expresiones Objetos Obtención y modificación de propiedades

    Se puede utilizar el ’.’ para acceder a una propiedad de un objeto, pero adicionalmente se pueden usar los corchetes (’[]’) como un arreglo asociativo 1 var x = { prop1 : 5 , func : function ( param ) { console . log ( param ) ; } } ; 2 x . prop1 ; 3 x [ ' prop1 ' ] ; Estos operadores también se pueden usar con la asignación para crear o modificar propiedades 1 x . prop2 = "Ahora un string " ; 2 x [ "prop3" ] = true ; 3 x ;
  29. Conversiones de tipos Expresiones Objetos Obtención y modificación de propiedades

    Se puede utilizar el ’.’ para acceder a una propiedad de un objeto, pero adicionalmente se pueden usar los corchetes (’[]’) como un arreglo asociativo 1 var x = { prop1 : 5 , func : function ( param ) { console . log ( param ) ; } } ; 2 x . prop1 ; 3 x [ ' prop1 ' ] ; Estos operadores también se pueden usar con la asignación para crear o modificar propiedades 1 x . prop2 = "Ahora un string " ; 2 x [ "prop3" ] = true ; 3 x ; Se puede ver que un objeto en Javascript es como un arreglo asociativo
  30. Conversiones de tipos Expresiones Objetos Obtención y modificación de propiedades

    Los nombres de las variables pueden crearse durante la ejecución 1 var x = { prop1 : 5 , prop2 : function ( param ) { console . log ( param ) ; } , prop3 : false , prop4 : "STRINGGG" } ; 2 for ( var i = 1; i <=4; i ++) { console . log ( x [ "prop" + i ] ) ; }
  31. Conversiones de tipos Expresiones Objetos Obtención y modificación de propiedades

    Los nombres de las variables pueden crearse durante la ejecución 1 var x = { prop1 : 5 , prop2 : function ( param ) { console . log ( param ) ; } , prop3 : false , prop4 : "STRINGGG" } ; 2 for ( var i = 1; i <=4; i ++) { console . log ( x [ "prop" + i ] ) ; } Estos operadores también se pueden usar con la asignación para crear o modificar propiedades 1 x . prop2 = "Ahora un string " ; 2 x [ "prop3" ] = true ; 3 x ;
  32. Conversiones de tipos Expresiones Objetos Obtención y modificación de propiedades

    Los nombres de las variables pueden crearse durante la ejecución 1 var x = { prop1 : 5 , prop2 : function ( param ) { console . log ( param ) ; } , prop3 : false , prop4 : "STRINGGG" } ; 2 for ( var i = 1; i <=4; i ++) { console . log ( x [ "prop" + i ] ) ; } Estos operadores también se pueden usar con la asignación para crear o modificar propiedades 1 x . prop2 = "Ahora un string " ; 2 x [ "prop3" ] = true ; 3 x ; Se puede ver que un objeto en Javascript es como un arreglo asociativo
  33. Conversiones de tipos Expresiones Objetos Objeto global Todas las variables

    globales y funciones que se declaren se preservan en el objeto global
  34. Conversiones de tipos Expresiones Objetos Objeto global Todas las variables

    globales y funciones que se declaren se preservan en el objeto global Cuando se carga un navegador automáticamente se crea el objeto global y se le asignan funciones y propiedades que ya hemos visto (undefined, Infinity, Nan, isNan, etc)
  35. Conversiones de tipos Expresiones Objetos Objeto global Todas las variables

    globales y funciones que se declaren se preservan en el objeto global Cuando se carga un navegador automáticamente se crea el objeto global y se le asignan funciones y propiedades que ya hemos visto (undefined, Infinity, Nan, isNan, etc) Constructores de funciones Date(), RegExp(), String(), etc también se agregan en este objeto Se puede usar thisen el nivel de anidamiento mas alto para referirse al objeto global (no se habla de funciones ni dentro de objetos ya definidos)
  36. Conversiones de tipos Expresiones Objetos Objeto global Todas las variables

    globales y funciones que se declaren se preservan en el objeto global Cuando se carga un navegador automáticamente se crea el objeto global y se le asignan funciones y propiedades que ya hemos visto (undefined, Infinity, Nan, isNan, etc) Constructores de funciones Date(), RegExp(), String(), etc también se agregan en este objeto Se puede usar thisen el nivel de anidamiento mas alto para referirse al objeto global (no se habla de funciones ni dentro de objetos ya definidos) En los navegadores se puede usar window en vez de this