In de laatste video zagen we hoe u objecten uit constructorfuncties maken met de nieuwe sleutelwoord in deze video.
We gaan om te leren hoe u meerdere constructorfuncties gebruiken zonder dupliceren code.
Het materiaal hier zal een uitdaging zijn.
Dus zorg ervoor dat u de video-serie op het zoekwoord dit hebt bekeken voordat ik naar voren.
Laten we nu eens voorstellen dat we twee constructorfuncties een voor een auto en een voor een motorfiets.
Hier is de code voor hen beiden en wat we hier zien is niets bijzonders slechts enkele functies die objecten met behulp van de nieuwe zoekwoord te bouwen.
Maar wat is er niet geweldig over deze code.
Kijk hoeveel code we dupliceren in de motorfiets-functie.
Het zou wel heel netjes zijn als we een of andere manier de code van de kaart functie kon lenen en zet het in de motor functie.
Dus je zou kunnen denken waarom we niet gewoon de auto functie bellen binnenkant van de motor functie.
Het probleem hier is wanneer we de auto functie aan te roepen het sleutelwoord dit verwijst naar het object dat wordt gemaakt uit de auto-functie.
Maar dat is de verkeerde dingen.
Wat we nodig hebben om hier te doen is de waarde van het zoekwoord dit om het object gemaakt op basis van de motorfiets functie zijn.
Dus hoe kunnen we veranderen de waarde van het zoekwoord.
Dit gaan we terug naar ons derde regel van het uitzoeken van de waarde van het zoekwoord dit met expliciete binding.
Dit betekent dat we willen gebruiken bellen toe te passen of te binden we kunnen ontslaan met behulp binden, want we willen niet een functie-definitie terug dus laten we kiezen bellen of toe te passen.
Beter nog laten we eens kijken naar zowel en zien welke een betere keuze als een waarschuwing zou kunnen zijn.
De code Ik ga om te laten zien kan behoorlijk verwarrend zijn op het eerste.
Dus voel je vrij om te pauzeren de video proberen om het eerst te lezen en zet het in de chromen console om precies te zien wat er gebeurt.
Dus de auto-functie ziet er hetzelfde uit, maar de leuke dingen gebeurt in de motorfiets functie in plaats van het dupliceren van de code van de auto-functie.
Wij roepen de auto functie, maar verander de context van het sleutelwoord dat dit het sleutelwoord deze zijn.
Wat betekent dat.
Nou denk terug aan ons probleem voordat toen we niet gebruiken noemen we de juiste context van de belangrijkste woord verloren.
Dit de juiste waarde van het zoekwoord.
Dit moet worden wat object wordt gemaakt van de motorfiets functie.
Wanneer de nieuwe zoekwoord de weg wordt gebruikt toegang tot we dat doel is met behulp van het sleutelwoord deze binnenkant van de motor functie.
Dit is nogal verwarrend.
Dus laten we proberen om het opnieuw te begrijpen.
We willen verdubbeling van onze motorfiets functie te verwijderen.
Dus wat we doen is het lenen van de code van de auto-functie door te bellen naar het binnen van de motorfiets functie.
Het probleem hier is dat het zoekwoord dit binnenkant van de auto functie is niet het sleutelwoord dit dat we willen gebruiken.
Dus moeten we de waarde van het zoekwoord dit te veranderen om dat te doen wij gebruiken beller toe te passen.
En als de eerste parameter om te bellen of passen we aangeven wat we zouden willen de waarde van het zoekwoord dat dit de waarde die we willen zijn.
Het sleutelwoord dit te zijn, is het object dat wordt gemaakt op basis van de motor functie.
De manier waarop we toegang krijgen tot dat object is met behulp van het sleutelwoord deze binnenkant van de motor functie.
Dat is de reden waarom het eerste argument om te bellen of toe te passen is het sleutelwoord deze die verwijst naar het object gemaakt op basis van de motor functie.
Wanneer de nieuwe sleutelwoord wordt gebruikt als je nog steeds struikelen over dit geen zorgen.
We doen een aantal mooie geavanceerde javascript hier.
Pauzeer de video en probeer deze code voorbeelden.
En zoals altijd vragen ons vragen, zodat we gesprek kan gebruiken of toe te passen.
Maar vergeet niet het enige verschil is de tweede parameter met de tweede parameter toe te passen toe te passen is een array van argumenten die worden doorgegeven aan de functie, zodat we kunnen beide plaatsen maken model en het jaar in een array of we kunnen gebruik maken van een ander speciaal sleutelwoord de argumenten maken trefwoord.
U kunt argumenten eerder gezien, maar als geen argumenten is een lijst van alle van de argumenten die worden doorgegeven aan een functie is het technisch niet een array.
Maar voor onze doeleinden kunt u denken aan het als een voor nu hier is een snel voorbeeld met behulp van de argumenten array.
Ik ga naar een functie genaamd lijst argumenten die de argumenten doorgegeven aan de functie zal terugkeren maken.
Laten we nu noemen lijst argumenten met één twee en drie.
We zullen zien krijgen we terug een array van de argumenten die aan die functie.
Nu in ons voorbeeld kunnen we de array arguments in plaats van notering te gebruiken.
Maak model en bouwjaar.
Zet een aardige refactor.
We zijn gegaan te kopiëren en plakken van drie lijnen van auto functie lenen de auto functie te veranderen de context van het zoekwoord Hierdoor en passeren argumenten die functie de volgende video.
We gaan samen te vatten wat we geleerd hebben over constructorfuncties en het nieuwe sleutelwoord.