1
00:00:00,420 --> 00:00:04,050
Quindi questo video sarà l'ultimo sulle funzioni per un po '.

2
00:00:04,050 --> 00:00:07,530
E parleremo di un concetto chiamato funzioni di ordine superiore.

3
00:00:07,530 --> 00:00:13,950
Quindi le funzioni di ordine superiore sono funzioni che prendono una funzione come argomento o restituiscono

4
00:00:13,950 --> 00:00:14,970
un'altra funzione.

5
00:00:15,510 --> 00:00:20,850
Quindi sì, questo è possibile e non solo è possibile, è qualcosa che faremo molto più

6
00:00:20,850 --> 00:00:22,190
tardi in questo corso.

7
00:00:22,380 --> 00:00:27,900
Quindi ti mostrerò un esempio iniziale chiamato intervallo impostato e l'intervallo impostato è

8
00:00:28,230 --> 00:00:34,140
che prende una funzione e chiamerà quella funzione a un intervallo specifico che forniamo.

9
00:00:34,140 --> 00:00:38,340
Quindi è un modo per ripetere qualcosa ogni secondo o mezzo secondo.

10
00:00:38,400 --> 00:00:42,340
In questo momento con un loop possiamo ripetere le cose ma succede immediatamente.

11
00:00:42,360 --> 00:00:45,010
Quindi impostiamo l'intervallo che possiamo dedicare al tempo.

12
00:00:45,840 --> 00:00:48,790
Quindi andiamo avanti e diamo un'occhiata a come l'intervallo impostato funziona.

13
00:00:49,170 --> 00:00:54,300
E prima di addentrarci in questo, dobbiamo definire una funzione che stiamo per passare

14
00:00:54,330 --> 00:00:55,210
all'intervallo impostato.

15
00:00:55,260 --> 00:00:58,750
Quindi scriveremo codice per cantare di nuovo Twinkle.

16
00:00:58,800 --> 00:01:04,410
Stiamo andando in modo abbreviato e lo programmeremo per l'esecuzione utilizzando l'intervallo impostato ogni secondo.

17
00:01:04,950 --> 00:01:07,620
Quindi per prima cosa dobbiamo scrivere il codice scintillio scintillio.

18
00:01:07,710 --> 00:01:15,270
Quindi farò una funzione canta e questo verrà solo per non registrare.

19
00:01:15,270 --> 00:01:17,370
Brilla brilla.

20
00:01:17,970 --> 00:01:19,340
E poi mi

21
00:01:22,170 --> 00:01:28,100
chiedo un'altra riga e ci limiteremo a lasciarla così posso chiamarmi da solo.

22
00:01:28,200 --> 00:01:29,580
Proprio così.

23
00:01:29,730 --> 00:01:31,600
E funziona benissimo.

24
00:01:31,650 --> 00:01:39,060
che vogliamo fare è usare l'intervallo impostato per far cantare o chiamare ogni 1000 millisecondi o ogni secondo.

25
00:01:39,060 --> 00:01:40,100
Quindi, quello

26
00:01:40,410 --> 00:01:45,490
Quindi per farlo definirò il pattern qui, quindi l'intervallo impostato richiede due argomenti.

27
00:01:45,540 --> 00:01:49,340
È solo una funzione, ma ha bisogno di un'altra funzione come argomento.

28
00:01:49,380 --> 00:01:53,230
Il primo è solo lo chiameremo un altro funk.

29
00:01:53,430 --> 00:01:57,060
E il secondo è l'intervallo in millisecondi.

30
00:01:57,060 --> 00:01:58,560
Quindi ho intenzione di compilare questo ora.

31
00:01:58,720 --> 00:02:08,730
Un'altra chiamata telefonica la funzione che vogliamo chiamare è chiamata Sing e l'intervallo è 1000 millisecondi.

32
00:02:09,390 --> 00:02:14,750
500 millisecondi o un millisecondo che sarebbe follemente veloce ma faremo 1000 millisecondi.

33
00:02:14,890 --> 00:02:17,110
Oppure potremmo fare ogni mezzo secondo

34
00:02:17,130 --> 00:02:23,920
Quindi chiameremo tutto ciò che c'è dentro per cantare queste due righe ogni 1000 millisecondi.

35
00:02:23,970 --> 00:02:29,700
E quando premo Invio, vedrai che inizia a succedere.

36
00:02:29,700 --> 00:02:35,040
L'altra cosa che voglio solo richiamare la tua attenzione prima che scompaia è che quando l'Iran

37
00:02:35,460 --> 00:02:37,320
imposta l'intervallo restituisce questo numero due.

38
00:02:37,470 --> 00:02:39,840
Quindi vedremo a cosa serve e solo un momento.

39
00:02:40,410 --> 00:02:45,720
Quindi un'altra cosa che potresti chiederti è perché non abbiamo bisogno di parentesi dopo aver visto.

40
00:02:46,050 --> 00:02:52,440
che non siamo noi a dire che l'intervallo impostato chiama in realtà ogni 1000 secondi.

41
00:02:53,100 --> 00:02:54,590
E il motivo è

42
00:02:54,900 --> 00:02:56,430
Quindi non vogliamo eseguirlo.

43
00:02:56,460 --> 00:02:58,570
Vogliamo impostare l'intervallo eseguito.

44
00:02:58,740 --> 00:03:05,130
Quindi quello che facciamo è solo passare il valore di dire che stiamo solo passando il nome Singh e il codice al

45
00:03:05,130 --> 00:03:05,750
suo interno.

46
00:03:05,940 --> 00:03:07,220
Ma non lo stiamo eseguendo.

47
00:03:07,260 --> 00:03:09,470
Lasciamo questo per impostare l'intervallo.

48
00:03:09,690 --> 00:03:16,200
dobbiamo usare questo numero per impostare l'intervallo restituisce un numero e possiamo usare quel numero per fermarlo.

49
00:03:16,200 --> 00:03:18,300
Quindi per interrompere l'intervallo impostato

50
00:03:18,300 --> 00:03:24,720
Quindi c'è un altro intervallo di funzione chiaro e diamo solo quel numero due o potrebbe essere un altro

51
00:03:24,720 --> 00:03:26,160
numero nel tuo caso.

52
00:03:26,160 --> 00:03:33,420
Quindi sommare questo intervallo impostato è solo un esempio di una funzione di ordine superiore e una funzione di ordine superiore

53
00:03:33,780 --> 00:03:37,480
è una in cui possiamo passare ad un'altra funzione come argomento.

54
00:03:37,860 --> 00:03:43,040
E potremmo restituire un'altra funzione che non abbiamo ancora visto, ma molto spesso passeremo

55
00:03:43,380 --> 00:03:45,210
una funzione ad un'altra funzione.

56
00:03:45,210 --> 00:03:52,560
Quindi c'è un altro cambiamento che potremmo fare che a volte vogliamo eseguire del codice ogni secondo.

57
00:03:52,560 --> 00:03:54,310
Ad esempio, impostare l'intervallo.

58
00:03:54,420 --> 00:03:58,390
Ma non vogliamo definire una funzione separata prima del tempo.

59
00:03:59,430 --> 00:04:07,470
Quindi, invece di dire qui, non ho ancora una funzione e voglio scriverlo proprio qui potrei farlo

60
00:04:07,770 --> 00:04:10,170
con qualcosa chiamato funzione anonima.

61
00:04:10,350 --> 00:04:13,240
E sembra così.

62
00:04:13,290 --> 00:04:17,850
Quindi scrivo la funzione ma non gli do un nome perché non lo userò mai più.

63
00:04:17,970 --> 00:04:20,190
Lo sto solo dando all'intervallo impostato.

64
00:04:20,250 --> 00:04:27,590
Quindi parentesi funzione e poi dentro di qui scriverò il mio codice e ho intenzione di premere invio.

65
00:04:27,720 --> 00:04:32,050
Quindi all'interno di queste parentesi ho inserito il registro cancellato.

66
00:04:32,910 --> 00:04:41,580
Sono una funzione anonima e controllo quel registro.

67
00:04:41,580 --> 00:04:43,240
Questo e spettacolare.

68
00:04:44,100 --> 00:04:45,270
Tutto ok.

69
00:04:45,270 --> 00:04:52,210
Quindi ho bisogno di aggiungere il mio intervallo di virgola e facciamo questo ogni due secondi.

70
00:04:52,290 --> 00:04:54,790
Quindi questo è un po 'frenetico.

71
00:04:54,960 --> 00:05:04,350
Venendo dal nostro intervallo di swing semplice, quello che stiamo facendo è definire la funzione proprio qui

72
00:05:04,380 --> 00:05:05,200
in linea.

73
00:05:05,400 --> 00:05:08,580
Quindi questo non è qualcosa che possiamo chiamare al di fuori dell'intervallo impostato.

74
00:05:08,580 --> 00:05:13,220
È puramente un modo per passare un gruppo di codice nell'intervallo impostato.

75
00:05:13,410 --> 00:05:15,230
E poi il secondo argomento è lo stesso.

76
00:05:15,240 --> 00:05:16,530
È solo un altro numero.

77
00:05:16,800 --> 00:05:19,850
E se lo faccio, vedrai ogni due secondi.

78
00:05:20,010 --> 00:05:21,580
Chiama questo codice.

79
00:05:22,250 --> 00:05:24,470
Ma non ho modo di chiamare di nuovo questa funzione.

80
00:05:24,660 --> 00:05:26,010
Al di fuori di esso.

81
00:05:26,190 --> 00:05:31,740
Quindi vedremo le funzioni anonime un po 'più avanti in questa classe e quasi sempre

82
00:05:31,860 --> 00:05:35,130
le usiamo quando passiamo una funzione ad un'altra funzione.

83
00:05:35,130 --> 00:05:39,870
Quindi se questo è ancora un po 'confuso per te non ti preoccupare, impiegheremo molto più tempo usando

84
00:05:40,320 --> 00:05:41,530
queste cose come l'intervallo impostato.

85
00:05:41,550 --> 00:05:45,100
Ma anche alcune altre funzioni che introdurremo in alcuni video da adesso.
