Skip to content

Commit 01d3e84

Browse files
committed
Prototypes
1 parent dcff9b2 commit 01d3e84

File tree

3 files changed

+54
-0
lines changed

3 files changed

+54
-0
lines changed

README.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -372,3 +372,57 @@ console.log(arreglo);
372372
![Prototype](prototypes/prototype.png)
373373

374374
>Pero como indicamos podemos crear nuevos metodos, como se muestra a continuación.
375+
376+
### Ejemplo
377+
378+
```js
379+
function Casa(calle,numero){
380+
this.calle = calle;
381+
this.numero = numero;
382+
}
383+
384+
const miCasa = new Casa('San Pedro',220);
385+
386+
console.log(miCasa);
387+
```
388+
### Consola (Google Chrome)
389+
390+
![Console_Result_1](prototypes/P_1.png)
391+
392+
393+
># Beneficios del prototype
394+
>> Sabemos que podemos tener `function` y tener varias funciones dentro de ellas mismas de las cuales podemos crear variables con sus propiedades `objects` del tipo de la `function`, pero que tal si necesitaramos alguna de las funciones que estan dentro de los objetos, darle mantenimiento a nuestro codigo.
395+
396+
```js
397+
function Casa(calle,numero,casa){
398+
this.calle = calle;
399+
this.numero = numero;
400+
this.casa = casa;
401+
402+
this.tipoCasa = function(){
403+
404+
let tipo;
405+
if(this.casa = 1){
406+
tipo = 'Unifamiliar';
407+
} else if(this.casa = 2){
408+
tipo = 'Duplex';
409+
}else{
410+
tipo = 'Departamento';
411+
}
412+
413+
}
414+
415+
}
416+
417+
const miCasa = new Casa('San Pedro',220);
418+
419+
console.log(miCasa);
420+
```
421+
422+
### Consola (Google Chrome)
423+
424+
![Console_Result_2](prototypes/P_2.png)
425+
426+
>Si buen podemos observar que ahora que se integro una función como se muestra en cosola, nosotros no podriamos utilziarla en otro objeto de otro tipo si así lo requirieramos, por lo tanto tenemos que separar nuestro codigo y "unirlo" de alguna manera para que este disponible en otras funciones.
427+
428+
># **"Un objeto hereda sus funciones del `prototype`"**.

prototypes/P_1.png

34.2 KB
Loading

prototypes/P_2.png

37.8 KB
Loading

0 commit comments

Comments
 (0)