These are chat archives for FreeCodeCamp/Espanol

23rd
Nov 2016
Juan Riquelme
@soulchainer
Nov 23 2016 13:20
Estoy intentando hacer scroll sincronizado, @jenkynolasco11 :þ xD.
Ya me funciona a medias. Poco a poco xD. BTW: al final no he necesitado las ref. Cambié la forma en que lo tenía pensado (porque no funcionaba nada nada xD) y intenté un nuevo acercamiento que se me ocurrió esta mañana :þ. También tiene sus problemas, pero ya me estoy acercando más xD. A ver si consigo que vaya bien xD.
(Eso sí, los elementos si los uso :þ)
Juan Riquelme
@soulchainer
Nov 23 2016 16:29
Hoy, en propiedades CSS que ojalá estuvieran mejor soportadas en todos los navegadores, os traigo: scroll-behavior. Hace que animar el scroll sea un juego de niños, porque lo hace sólo y nativamente el navegador. Funciona de forma nativa en Firefox, tanto Web como Mobile. En Chrome/Opera (no se diferencian mucho, al ser el mismo moto
r) está soportado sólo en el escritorio... Y es como si no lo estuviera, porque hay que activar una flag de experimentos para ello, cosa que no puedes asumir que quien visite la web vaya a tener activada, porque será 1 entre millones xD.
eric mosvel
@ericmosvel
Nov 23 2016 17:45
Hola chicos!
alguien podría darme una mano con el challeng "Make Object Properties Private" no entiendo ni un #$&$#%
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:46
@ericmosvel si tienen this, quitaselo :v
@ericmosvel no, pero en serio, cual es tu problema?
eric mosvel
@ericmosvel
Nov 23 2016 17:46
estoy confundido con lo que hace el código.
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:46
Copia el codigo aca, y te orientamos
eric mosvel
@ericmosvel
Nov 23 2016 17:46
ok gracias
var Bike = function() {

  // Only change code below this line.
  var gear = 0;

  this.getGear = function (){
    return gear;

  };

  this.setGear = function (){

  };

};

var myCar = new Car();

var myBike = new Bike();
bueno: el new se usa para construir un nuevo objeto.
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:48
Yup

Pregunta:

que pasa si haces:

console.log(myCar.gear)
eric mosvel
@ericmosvel
Nov 23 2016 17:49
me piden que debo crear dos métodos públicos... ahí lo tengo
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:50
Ok, bien, pero te falta algo en setGear, no?
eric mosvel
@ericmosvel
Nov 23 2016 17:51

Pregunta:

que pasa si haces:

console.log(myCar.gear) el console muestra el valor de gear.

si es verdad..
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:52
Oh, so la idea del problema es que las propiedades del objecto no sean vista fuera de su scope
eric mosvel
@ericmosvel
Nov 23 2016 17:52
pero tengo dificultad en entender que hace el código en sí...
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:52
Entiendes el concepto de objecto, privado, y publico?
eric mosvel
@ericmosvel
Nov 23 2016 17:52
yeap
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:53
Objeto*
mala costumbre
En fin
Lo que te pide aca es que toda propiedad del objecto, sea privada, a excepcion de sus metodos
eric mosvel
@ericmosvel
Nov 23 2016 17:53
ok
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:53
Objeto* -_-
eric mosvel
@ericmosvel
Nov 23 2016 17:54
jajaja no problem
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:54
la propiedad gear no deberia ser vista fuera del objeto
Por lo tanto, usamos la palabra clave this
eric mosvel
@ericmosvel
Nov 23 2016 17:54
así es.. ahí vamos bien.
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:55
Lo que hace this es que, al crear el objeto, y al declarar propiedades usando this, definira que todo lo que este dentro de ese scope del objeto sera solo visto por el mismo
eric mosvel
@ericmosvel
Nov 23 2016 17:55
this tiene su complejidad jejeje
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 17:55
Yup, aunque no es tan complicado cuando lo comprendes
Pero dale tiempo a eso lol
Piensa como si this fuese el contexto del objeto que la esta utilizando
Anyways
Con esto dicho, te llego algun rayo de luz con la explicacion, o todavia sigues confuso?
eric mosvel
@ericmosvel
Nov 23 2016 17:59
bueno.... entonces hay algo contradictorio. Por qué usar this para los métodos y hacerlos "publicos" como dicen el "Challeng", si como dices this tiene un scope limitado
solo visto por el mismo objeto.
entiendo que un método es una función almacenada como property dentro de un objeto.
:confused:
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:03
Wait, checking my spanish
Uhm
Hasta ahora, cual seria tu solucion al problema?
eric mosvel
@ericmosvel
Nov 23 2016 18:07
Para mi sería que la variable gear vaya incrementando.
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:08
Dentro del methodo setGear, no?
metodo* -_-
eric mosvel
@ericmosvel
Nov 23 2016 18:08
así es.
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:08
Necesito revisar mi español xD
eric mosvel
@ericmosvel
Nov 23 2016 18:08
lol
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:09
Uhm si, pero al crear el objeto, tienes todo el derecho de usar sus propiedades (aquellas continuas al this)
eric mosvel
@ericmosvel
Nov 23 2016 18:09
intenté hacerlo así: gear += set
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:09
Oh, mala mia, yo lo dije mal. Usando this realmente lo hace publico
eric mosvel
@ericmosvel
Nov 23 2016 18:09
ok
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:09
Esta bien, pero recuerda que el metodo no recibe un parametro, so tienes que arreglar eso, tambien
eric mosvel
@ericmosvel
Nov 23 2016 18:10
this.setGear = function (set){
    gear += set;
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:11
Ok, y funciono?
eric mosvel
@ericmosvel
Nov 23 2016 18:11
nope
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:12
Trata this.gear
No declarandolo, sino dentro de la funcion
eric mosvel
@ericmosvel
Nov 23 2016 18:12
ok
tampoco
Qué función cumple var myBike = new Bike(); en el code, eso también me ha puesto a pensar.
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:14
Declara una nueva instancia del objeto
eric mosvel
@ericmosvel
Nov 23 2016 18:15
ok... pero si el objeto Bike tuviese proprety, pero aquí no es el caso o si?
Jenky W. Nolasco
@jenkynolasco11
Nov 23 2016 18:17
Javascript internamente interpreta cada objeto que utilize this como un objeto instanciable
Usando this, determina que el objeto puede ser utilizado fuera fuera de su scope
No usando this, dice que dicha propiedad es privada solo para el uso interno de dicho objeto
eric mosvel
@ericmosvel
Nov 23 2016 18:18
lo que no veo es esto var Bike = function () { } pero debería ser esto: function Bike (){}
ok
entiendo.
Martin Algañaraz
@idcmardelplata
Nov 23 2016 18:21

Hola @ericmosvel si lo que deseas es poder usar propiedades privadas podes usar algo como esto: ``` javascript
var Person = function() {
var name = '';
var age = 0;

var setAge = function(newAge) { age = newAge;}
var setName = function(newName) { name = newName;}
var getAge = function() { return age; }
var getName = function() { return name; }

return {
setAge :setAge,
getAge :getAge,
setName:setName,
getName:getName
};
}

var p = new Person();
p.setName("carlos");
console.log(p.getName());
console.log(p.name); // undefined
```

eric mosvel
@ericmosvel
Nov 23 2016 18:22
ok gracias... ahora regrese, voy almozar ;)
Martin Algañaraz
@idcmardelplata
Nov 23 2016 18:23
no se que hace esa carita triste en el codigo pero bueno... son las bondades de gitter xd
buen probecho
huazontla
@huazontla
Nov 23 2016 19:45
Hola, alguien sabe como hacer funcionar la teclas arriba y abajo para poder seleccionar los resultados en una caja de texto usando Autocomplete de Materializecss
eric mosvel
@ericmosvel
Nov 23 2016 22:33
Hello regresé
Solucioné el challegen "Make Object Properties Private" pero no se por qué funcionó. :v:
:v
eric mosvel
@ericmosvel
Nov 23 2016 22:38
U_U
var Bike = function() {

  // Only change code below this line.
  var gear = 0;

  this.getGear = function (){
    return gear;

  };
 // Aquí abajo, en lugar de += pusé = 
  this.setGear = function (set){
    gear = set;

  };

};

var myCar = new Car();

var myBike = new Bike();