Safu na Kazi Zisizo na Majina katika JavaScript

Nimeshawishiaga hapo awali kwamba kazi katika JavaScript zinajisikia kama masharti au nambari. Hasa, unaweza kutengeneza safu inayojumuisha kazi. Tuunde:

javascriptlet arr = [
  function() {console.log('1')},
  function() {console.log('2')},
  function() {console.log('3')},
];

Wacha, kwa mfano, tuandike kwenye konsoli yaliyomo katika kipengele cha sifuri cha safu:

javascriptlet arr = [
  function() {console.log('1')},
  function() {console.log('2')},
  function() {console.log('3')},
];

console.log(arr[0]); // tutaona msimbo wa asili wa kazi ya kwanza

Kama unavyoona, katika mfano hapo juu tunapata msimbo wa asili wa kazi, na sio matokeo.

Ili kuitisha kazi, inahitaji kuandikwa mabano ya duara. Kwa kuwa kazi yetu imehifadhiwa kwenye arr[0], basi mabano ya duara yatahitajika kuandikwa baada ya yale ya mraba, kama hivi: arr[0](). Tuangalie:

javascriptlet arr = [
  function() {console.log('1')},
  function() {console.log('2')},
  function() {console.log('3')},
];

arr[0](); // itatoa '1'

Pia unaweza kupitia safu yetu ya kazi kwa kutumia kitanzi na katika kitanzi hicho kiitisha kila kazi:

javascriptlet arr = [
  function() {console.log('1')},
  function() {console.log('2')},
  function() {console.log('3')},
];

for (let func of arr) {
  func(); // tunaziita kazi zetu kwenye kitanzi
}
Задание 1

Tengeneza safu arr yenye kazi tatu. Acha ya kwanza irudishe kupitia return nambari 1, ya pili - nambari 2, ya tatu - nambari 3.

Задание 2

Kwa kutumia safu arr uliyoiumba andika kwenye konsoli nambari 3, kwa kukiita kitendakazi kinachofanana.

Задание 3

Kwa kutumia safu arr uliyoiumba pata jumla ya matokeo ya kazi (bila kitanzi).

Задание 4

Pitia safu arr uliyoiumba kwa kutumia kitanzi na uandike matokeo ya kazi zote kwenye konsoli.