1
00:00:00,450 --> 00:00:05,690
Bentornato nel video precedente abbiamo discusso la terza regola per determinare il

2
00:00:05,690 --> 00:00:08,430
valore della parola chiave questo legame esplicito.

3
00:00:08,430 --> 00:00:13,470
Abbiamo imparato che l'utilizzo di call apply e bind può modificare il contesto della parola chiave.

4
00:00:13,480 --> 00:00:19,890
Vediamo come possiamo risolvere il nostro problema precedente utilizzando la chiamata, il primo blocco di codice è identico a quello

5
00:00:19,890 --> 00:00:20,990
che abbiamo visto prima.

6
00:00:21,180 --> 00:00:24,090
Ma vediamo cosa sta succedendo nella seconda sezione.

7
00:00:24,150 --> 00:00:29,490
Precedentemente stavamo chiamando la persona cane cane dire ciao che stava tornando Ciao.

8
00:00:29,520 --> 00:00:36,270
della funzione say ciao fa riferimento all'oggetto dog che non ha una proprietà first name.

9
00:00:36,270 --> 00:00:40,620
Undefined si verifica perché il valore della parola chiave all'interno

10
00:00:40,620 --> 00:00:45,660
Dal momento che stiamo usando la chiamata, ora possiamo cambiare ciò che vogliamo che sia il valore della parola chiave.

11
00:00:45,870 --> 00:00:48,840
Quindi cambiamo per essere l'oggetto persona.

12
00:00:49,140 --> 00:00:55,590
Ora che lo abbiamo fatto, possiamo vedere che la funzione restituisce Hello e il nostro problema è stato risolto.

13
00:00:55,590 --> 00:01:01,400
Possiamo anche utilizzare la funzione di determinazione del contesto all'interno dell'oggetto dog e modificare il valore della

14
00:01:01,440 --> 00:01:04,350
parola chiave this per rendere la funzione restituita true.

15
00:01:04,800 --> 00:01:10,800
Una cosa importante da notare è che non stiamo invocando il dire ciao o determinare il metodo di contesto semplicemente

16
00:01:10,800 --> 00:01:12,650
associamo la chiamata su di essa.

17
00:01:12,690 --> 00:01:16,750
Quindi non ci sono parentesi dopo dire ciao e determinare il contesto.

18
00:01:16,830 --> 00:01:25,030
Quando usiamo la chiamata, molto comunemente la chiamata viene utilizzata per evitare l'applicazione di codice come nell'esempio seguente.

19
00:01:25,110 --> 00:01:30,780
Qui abbiamo due oggetti freddi e L. E. che entrambi hanno una proprietà di primo nome e dicono metodo Hi.

20
00:01:31,920 --> 00:01:36,750
Mentre questo codice funziona perfettamente, ci stiamo ripetendo un po 'all'interno

21
00:01:37,140 --> 00:01:44,610
dell'oggetto Elete per dire che il metodo hi all'interno dell'oggetto è identico allo stesso metodo all'interno dell'oggetto freddo.

22
00:01:44,610 --> 00:01:50,340
Come possiamo refactoring il nostro codice e sbarazzarsi del metodo alto all'interno dell'oggetto.

23
00:01:50,340 --> 00:01:54,750
Quello che ci piace davvero è usare lo stesso metodo alto dell'oggetto cult.

24
00:01:54,750 --> 00:02:00,870
Ma invece della parola chiave che si riferisce al freddo, vogliamo impostarlo esplicitamente come oggetto L-E.

25
00:02:01,530 --> 00:02:06,690
Metti in pausa il video ora e vedi se riesci a capire come risolvere il problema usando la chiamata.

26
00:02:06,690 --> 00:02:08,470
Diamo un'occhiata a una soluzione.

27
00:02:08,490 --> 00:02:15,120
Rimuoviamo il metodo say hi dall'oggetto e usiamo call per impostare il valore della parola chiave

28
00:02:15,270 --> 00:02:16,320
this come L-E.

29
00:02:16,380 --> 00:02:22,260
Quando viene invocato il metodo say hi, il primo parametro del metodo call è ciò a cui si desidera

30
00:02:22,320 --> 00:02:24,350
che la parola chiave faccia riferimento.

31
00:02:24,540 --> 00:02:26,250
Lo chiamiamo questo ARG.

32
00:02:26,940 --> 00:02:28,600
Ancora una volta questa roba è abbastanza complicata.

33
00:02:28,620 --> 00:02:33,330
Quindi se ti senti un po 'confuso guarda la diapositiva precedente e assicurati di

34
00:02:33,390 --> 00:02:38,540
digitare questi esempi nella console di Chrome per vedere esattamente cosa sta succedendo nel prossimo video.

35
00:02:38,610 --> 00:02:43,890
Daremo un'occhiata a apply e vediamo come possiamo impostare il contesto della parola chiave this using

36
00:02:44,190 --> 00:02:47,700
apply e passare argomenti alla funzione in cui chiamiamo apply.

37
00:02:47,700 --> 00:02:48,850
Dall'altra
