J'ai donc un autre exemple pratique de cas d'utilisation pour ajouter des méthodes à un objet.
Il existe une bibliothèque javascript populaire appelée soulignement J.
Oui.
Et nous allons parler plus de ce que les bibliothèques sont, mais pour l'instant, pensez-y comme juste un tas de code.
Quelqu'un d'autre a écrit que nous pouvons utiliser.
Donc, tout ce soulignement est un tas de fonctions que quelqu'un d'autre a écrit.
Nous pouvons les voir ici.
Chacune de ces fonctions est différente.
Donc, nous avons des choses comme trouver tous les certains contient min max sort par et ne compte pas vraiment comment ils fonctionnent ou ce qu'ils font.
Mais il est important que je vous montre qu'il ya beaucoup d'entre eux.
Donc souligner le nom des espaces tous ensemble un groupe d'entre eux tout à fait au lieu d'un objet appelé soulignement.
Juste pour souligner le caractère de sorte que vous pouvez voir c'est comment vous les appelez.
Underscore rendent un peu plus grand underscore dot map underscore point réduire et c'est juste fait pour que toutes ces méthodes sont regroupées de sorte que vous savez tout ce qui commence par soulignement provient de cette bibliothèque de soulignement.
Vous ne l'avez pas écrit vous-même.
Nous allons éventuellement parler de la façon dont nous importons une bibliothèque comme underscore.
Vous verrez comment nous pourrions même écrire quelque chose comme underscore éventuellement.
Mais ce que je veux montrer ici n'est pas le code lui-même.
Je veux simplement montrer le fait que tout est regroupé à l'intérieur d'un objet de soulignement.
Donc, plutôt que de l'espace chien ou de l'espace chat, ils ont décidé d'utiliser un personnage vraiment court mémorable qui est souligné.
Il ya une autre chose que je veux mettre en évidence dans cette vidéo qui est le mot clé ceci donc en javascript il ya un mot spécial ce que nous pouvons utiliser dans différents contextes pour faire des choses différentes.
Donc, pour démontrer ce qu'il fait et comment il fonctionne je vais aller de l'avant et faire un exemple rapide.
Supposons donc que je fais une application qui a des commentaires et je veux avoir des données communes stockées au lieu d'un objet ainsi que quelques méthodes comme print ou delete que je veux être stocké au lieu d'un objet ainsi.
Tout comme nous l'avons vu avec la méthode speak, je vais définir un espace de nom appelé commentaires.
Alors var commente que ça va être un objet et je vais juste commencer avec il être vide.
Ensuite, je vais définir la propriété de données qui est juste un tableau de commentaires.
C'est donc des commentaires stupides comme ça.
Et nous avons frappé entrer.
Donc, nous avons des commentaires comme celui-ci où nous avons juste une propriété de données et que la propriété a ce tableau a trois commentaires différents en elle.
Donc, si je voulais faire une méthode appelée imprimer ce que je pouvais faire est de définir une fonction séparément tout comme cette fonction d'impression et il prend dans un tableau.
Et tout ce que je veux faire est d'annuler tout point log chaque commentaire afin que je puisse le faire d'une manière bizarre où j'ai fait l'impression et puis je viens de faire un pour chacun.
Ainsi le tableau pour chaque fonction l'appelle élément.
Et puis j'annule ce journal.
L Donc, cette fonction n'est pas une méthode.
Il existe en dehors de mon objet de commentaires et si je voulais imprimer des données de stock commun, je devais exécuter l'impression et ensuite passer dans les commentaires des données de point.
C'est ce que nous avons fait jusqu'ici en définissant nos fonctions séparément dans l'espace de noms global de la fenêtre.
Mais si je veux l'ajouter à l'objet commentaires tout ce que je dois faire.
Je veux dire copier mon code ici et je vais revenir ici et dire des commentaires.
Imprimer égale.
Vous allez coller ma fonction et je peux laisser ce nom ici.
Je vais m'en débarrasser, car il n'est pas nécessaire de le nommer.
Là aussi.
Et plutôt que de le faire prendre un tableau comme un argument, je veux qu'il utilise ce que nous avons déjà au lieu de commentaires qui est nous avons déjà les données dans le même objet.
Donc, il ya une façon pour moi de partager les données au lieu d'un objet.
Donc, je peux utiliser des données de stock commun à l'intérieur de l'impression de stock commun.
Et la réponse est oui.
Et c'est là que le mot-clé entre en jeu.
Je n'ai donc pas besoin d'argument.
Si je veux seulement faire ceci est d'imprimer ce qui est dans les données communes au lieu d'un radar pour chacun.
Je peux réellement écrire ces données de point.
Donc, le mot-clé est un peu délicat dans différentes situations.
Cela signifie des choses différentes.
Définitivement l'une des parties plus quirkier de javascript.
Beaucoup de questions d'entrevue se concentrer sur elle.
Donc, c'est quelque chose que même les experts se battre avec.
Nous allons passer beaucoup plus de temps avec le mot-clé de ce que nous allons de l'avant quand nous apprenons des événements quand nous parlons de requête Jay et quand nous passons à l'arrière et de parler de bases de données ainsi.
Donc, pour l'instant, dans ce cas, le mot cela se réfère aux commentaires de l'objet, donc je vais vous montrer si je tapez entrer ici.
Regardons ce que ressemble commun maintenant, il a deux choses.
Données et tableau, puis cette méthode d'impression.
Et n'oubliez pas que la méthode d'impression se réfère à ces données.
Donc quand nous sommes à l'intérieur d'une impression, il s'agit de l'objet entier qui a des données à l'intérieur de celui-ci.
Donc, ces données est la façon dont nous pouvons aller de l'intérieur d'une impression peut accéder à ces données.
Donc, pour utiliser cette méthode maintenant tout ce que je dois faire est de dire les commentaires Prince et nous obtenons nos trois commentaires imprimés.
Donc ce que je viens de montrer est un modèle très courant pour la façon dont nous organisons le code.
Nous pouvons prendre certaines données le mettre à l'intérieur d'un objet, puis prendre les fonctions et la fonctionnalité associées et les ajouter en tant que méthodes au même objet et utiliser le mot-clé ceci pour accéder aux données que nous avons prédéfinies.
Si vous vous sentez un peu confus au sujet du mot clé ce qui est certainement à prévoir.
Nous venons tout juste de gratter la surface.
Et comme je l'ai mentionné, nous allons continuer à le revoir encore et encore.
Tout ce que je veux que vous compreniez, c'est qu'il ya un mot-clé appelé cela.
C'est un peu compliqué.
Et dans un contexte celui que j'ai montré ici en écrivant ceci au lieu d'une méthode, il se réfère à l'objet dans lequel la méthode est définie.
OK pour que ce soit pour les objets pour l'instant.
Très excitant.