Witamy z powrotem w poprzednim filmie widzieliśmy, że kiedy jest używana nowa kluczowe właściwość jest dodawany do obiektu utworzonego z funkcji konstruktora, zwanym Donder produ.
Ta nieruchomość linki do nieruchomości na prototypowej funkcji konstruktora.
Ale jaką wartość ma ta właściwość prototype mają właściwość prototype jest obiektem, który może mieć właściwości i metod umieszczonych na nim.
Te metody i właściwości są wspólne i dostępne dla każdego obiektu, który jest tworzony z tej funkcji konstruktora.
Kiedy nowy parametr jest używany w tym przykładzie, gdzie dodanie nieruchomości na prototypie o nazwie jest instruktorem i ustawiania wartości, aby było prawdziwe.
Teraz wszystkie nasze obiekty, które zostały utworzone z tego konstruktora przy użyciu nowego słowa kluczowego mieć dostęp do jest instr. nieruchomość.
Ale jak to się stało, to się stało.
Dodaliśmy nieruchomość od osoby do obiektu prototypowego i nagle dwa pozornie niepowiązanych obiektów mieć do niego dostęp.
Odpowiedź leży w ramach protokołu.
Ponieważ te obiekty mają link do prototypu osoba kropka nie mogą niczego wewnątrz niego dostęp.
W rzeczywistości jest to rzeczywiście Dokładny javascript znajdzie metody i właściwości dotyczące obiektów.
A co my właśnie opisany jest coś, co nazywa łańcuch prototypów.
Porozmawiajmy nieco więcej na ten temat.
Właśnie zobaczyłem, że kiedy dodaje obiekt do obiektu Osoba prototypu było dostępne z obiektów utworzonych przez tę funkcję konstruktora przy użyciu nowego słowa kluczowego.
Następnie powiedział, że powodem było to możliwe z powodu sposobu, w jaki javascript szuka metod i właściwości.
Pokażmy przykład.
Idę do zmiennej o nazwie R i ustaw równe pustą tablicę.
Co tak naprawdę nie było skrótem pisząc nową tablicę.
Używam wbudowanego konstruktora JavaScript o nazwie tablicy i poznać nowy obiekt z niego.
Wiemy również, w javascript, że nasze tablice mają metody nazywanej push który dodaje coś do końca tablicy.
Ale gdzie jest ta metoda Push zdefiniowane i jaki ma javascript wiedzieć, gdzie go znaleźć.
Odpowiedź znów jest w Dunder Prato.
Załóżmy, że zrezygnować.
D'oh.
Zmienna R i widzimy, że cały ten obiekt ma właściwość o nazwie dłogość Ale skąd metoda Push następnie pochodzą.
Dobrze zbadajmy co Dunder Prato tej naszej zmiennej jest.
To jest w rzeczywistości prototyp dot array możemy udowodnić, że pokazując, że są pod Prato potrójne równa prototyp radaru wartość true.
Więc sposób, że JavaScript znajdzie metody i właściwości, to patrząc na obiekt i jeśli nie może znaleźć metodę lub właściwość, której szukasz to idzie do obiektów Donder proto.
To rzeczywiście utrzymuje się dzieje, dopóki nie zostanie znalezione właściwość lub metoda.
A jeśli to nie zostanie znaleziony wyrażenie ma wartość niezdefiniowana możemy zobaczyć jeszcze innym przykładzie w języku JavaScript.
Każdy obiekt ma metoda zwana jest właścicielem nieruchomości, która zwraca true, jeśli obiekt ma właściwość określonego jako parametr ma na metodzie własności.
Co to znaczy.
Czasami przykład kodu jest wart tysiąca słów.
Wróćmy do naszej zmiennej.
Jedziemy, aby spróbować sprawdzić, czy nasza zmienna ma własną właściwość długości, ale gdzie jest ta metoda znajduje.
Spójrzmy na nasze naszego * zmiennej z konsoli dot DIR.
Można też po prostu wpisać Diyar, ale nie wydaje się być tutaj.
Więc co zrobić, javascript.
To idzie w górę łańcucha prototypów i stwierdza następny pod produ widzimy, że następny pod Prato jest prototypem obiektu.
I tu jest miejsce, gdzie ta metoda zostanie znaleziony.
Możemy to zilustrować, jak również ze schematem.
Po raz kolejny okręgi i kwadraty są funkcje są obiektami.
Tutaj widzimy, że zmienna R ma Prato Donder prototypu radaru.
Prototyp się tablica jest obiektem, jak również i posiada własny Donder Prato, który wskazuje na obiekt prototyp każdego obiektu w javascript zawiera obiekt prototypu.
To miejsce, gdzie metody jak ma własność pochodzić z Dunder Prato obiektu, na który prototyp jest nieważna i to gdzie zatrzymuje łańcuch prototypów.
Podsumowując możemy analizować, jak javascript znajdzie metody i właściwości za pomocą łańcucha prototypów widzieliśmy, jak będzie wyglądać javascript na obiekt i zobaczyć, czy istnieje metoda lub właściwość szukasz.
A jeśli nie będzie go do obiektów Dondre Prato i powtarzać dopóki nie ma innego programu Dondre w następnym filmie.
Porozmawiamy o wartości nieruchomości prototypu i praktyki z ćwiczeń.