1
00:00:00,300 --> 00:00:10,310
Bienvenue dans la vidéo précédente, nous avons vu que lorsque le nouveau mot clé est utilisé, une propriété est ajoutée à l'objet créé à partir de la fonction constructeur appelée producteur donder.

2
00:00:10,560 --> 00:00:14,780
Cette propriété est liée à la propriété prototype de la fonction constructeur.

3
00:00:15,330 --> 00:00:23,440
Mais quelle est la valeur de cette propriété prototype de la propriété prototype est un objet qui peut avoir des méthodes et des propriétés placées sur elle.

4
00:00:23,520 --> 00:00:30,770
Ces méthodes et propriétés sont partagées et accessibles par tout objet créé à partir de cette fonction constructeur.

5
00:00:30,780 --> 00:00:40,470
Lorsque le nouveau mot-clé est utilisé dans cet exemple, l'ajout d'une propriété sur le prototype appelé est instructor et définit la valeur true.

6
00:00:40,470 --> 00:00:47,910
Maintenant, tous nos objets qui ont été créés à partir de ce constructeur utilisant le nouveau mot-clé ont accès à l'instr. propriété.

7
00:00:48,450 --> 00:00:49,920
Mais comment cela s'est-il passé dans le monde?

8
00:00:50,130 --> 00:00:58,610
Nous avons ajouté une propriété sur l'objet personne prototype et tout d'un coup deux objets apparemment non liés ont accès à elle.

9
00:00:58,620 --> 00:01:01,080
La réponse se trouve dans le protocole.

10
00:01:01,380 --> 00:01:08,510
Étant donné que ces objets ont un lien vers le prototype de dot personne, ils ne peuvent accéder à rien à l'intérieur de celui-ci.

11
00:01:08,520 --> 00:01:15,260
En fait, c'est en fait la façon exacte dont javascript trouve des méthodes et des propriétés sur les objets.

12
00:01:15,450 --> 00:01:19,130
Et ce que nous venons de décrire est quelque chose que l'on appelle la chaîne prototype.

13
00:01:19,350 --> 00:01:21,410
Parlons un peu plus à ce sujet.

14
00:01:21,510 --> 00:01:31,120
Nous venons de voir que lorsque nous avons ajouté une propriété à l'objet prototype personne il était accessible à partir des objets créés par cette fonction constructeur en utilisant le nouveau mot-clé.

15
00:01:31,470 --> 00:01:38,210
Nous avons alors dit que la raison pour laquelle cela était possible est en raison de la façon dont javascript recherche des méthodes et des propriétés.

16
00:01:38,490 --> 00:01:40,110
Montrons un exemple.

17
00:01:40,110 --> 00:01:44,920
Je vais faire une variable appelée R et la mettre égale à un tableau vide.

18
00:01:44,940 --> 00:01:48,250
Ce que j'ai réellement fait était un raccourci pour écrire un nouveau tableau.

19
00:01:48,510 --> 00:01:53,770
J'utilise le construit dans le constructeur javascript appelé tableau et de rencontrer un nouvel objet de celui-ci.

20
00:01:53,820 --> 00:02:00,450
Nous savons également en javascript que nos tableaux ont une méthode appelée Push qui ajoute quelque chose à la fin d'un tableau.

21
00:02:00,660 --> 00:02:05,120
Mais où est cette méthode push définie et comment le javascript savoir où le trouver.

22
00:02:05,130 --> 00:02:08,060
La réponse est à nouveau dans Dunder Prato.

23
00:02:08,510 --> 00:02:09,250
Annule-la.

24
00:02:09,250 --> 00:02:09,640
D'oh.

25
00:02:09,660 --> 00:02:18,090
La variable R et nous voyons que tout cet objet a une propriété appelée lenth Mais d'où vient alors la méthode push.

26
00:02:18,420 --> 00:02:23,250
Eh bien, nous allons examiner ce que le Dunder Prato de cette notre variable est.

27
00:02:23,250 --> 00:02:35,120
C'est en fait le prototype de point matriciel que nous pouvons prouver qu'en montrant que sous Prato triple est égal à un prototype de radar, on évalue à vrai.

28
00:02:35,130 --> 00:02:46,020
Donc, la façon dont javascript trouve des méthodes et des propriétés est en regardant l'objet et si elle ne peut pas trouver la méthode ou la propriété que vous recherchez, il va à ce donder objets proto.

29
00:02:46,020 --> 00:02:49,810
Cela continue effectivement jusqu'à ce que la propriété ou la méthode est trouvée.

30
00:02:49,950 --> 00:02:58,260
Et si elle n'est pas trouvée l'expression évalue à indéfini, nous pouvons voir cela encore plus loin avec un autre exemple en javascript.

31
00:02:58,260 --> 00:03:08,370
Chaque objet a une méthode appelée possède propre propriété qui retourne true si l'objet a une propriété spécifiée comme paramètre de la méthode has on.

32
00:03:08,430 --> 00:03:09,600
Qu'est-ce que ça veut dire.

33
00:03:09,630 --> 00:03:12,300
Parfois, un exemple de code vaut mille mots.

34
00:03:12,300 --> 00:03:15,670
Revenons à notre variable.

35
00:03:15,750 --> 00:03:23,460
Nous allons essayer de voir si notre variable a une propriété propre de longueur, mais où est cette méthode localisée.

36
00:03:23,460 --> 00:03:26,550
Regardons notre variable avec console dot DIR.

37
00:03:26,640 --> 00:03:30,800
Vous pouvez également taper Diyar mais il ne semble pas être ici.

38
00:03:31,080 --> 00:03:32,680
Alors, que fait javascript.

39
00:03:32,700 --> 00:03:41,090
Il monte la chaîne de prototypes et trouve le suivant sous produc que nous pouvons voir que le suivant sous Prato est le prototype d'objet.

40
00:03:41,310 --> 00:03:43,810
Et voici où cette méthode est trouvée.

41
00:03:44,010 --> 00:03:47,040
Nous pouvons illustrer cela aussi bien avec le diagramme.

42
00:03:47,040 --> 00:03:51,150
Encore une fois les cercles sont des fonctions et les carrés sont des objets.

43
00:03:51,150 --> 00:03:56,220
Ici nous voyons une variable R qui a un donateur Prato d'un prototype radar.

44
00:03:56,220 --> 00:04:08,840
Le prototype array up est aussi un objet et a son propre doner Prato qui pointe vers prototype objet chaque objet unique en javascript contient l'objet du prototype.

45
00:04:08,880 --> 00:04:19,480
C'est là que les méthodes comme possède sa propre propriété proviennent du Dunder Prato de l'objet que prototype est nul et c'est là que la chaîne prototype s'arrête.

46
00:04:19,500 --> 00:04:30,170
Pour récapituler, nous analysons comment javascript trouve des méthodes et des propriétés en utilisant la chaîne de prototypes, nous avons vu comment javascript regardera un objet et voir si la méthode ou la propriété que vous recherchez existe.

47
00:04:30,330 --> 00:04:38,040
Et sinon il ira à ces objets Dondre Prato et répéter jusqu'à ce qu'il n'y ait pas un autre programme Dondre dans la prochaine vidéo.

48
00:04:38,070 --> 00:04:42,710
Nous parlerons plus de la valeur de la propriété prototype et de la pratique avec un exercice.
