ECMAScript ƙarancin
- Yanwada na baya Kwayar Function
- Yanwada na baya Ginafiyawa da abin da a kai wa kwayoyin kan jiki
ECMAScript ƙarancin da ke ƙaɗa ba ƙaɗa, ana ɗauka ƙarancin (closure).
Ƙabara, shine kwayar aiki da ke wakilta na tsarki da yauyi, kamar yadda ake ginafiya kwayar aiki da ke ginafiya alamari da a bai ginafiya ba.
Tukuru ƙabara dake yauyi
A ginafiya alamari na gaba a ECMAScript shine ƙabara dake yauyi. Ka kiyaye wannan koda:
var sMessage = "hello world"; function sayHelloWorld() { alert(sMessage); } sayHelloWorld();
A cikin wannan koda, bayan script ya yiwa kai tsakiyar alamari, a bai ginafiya karewar sMessage waɗannan bayanai. Kwayar sayHelloWorld() ta karewa sMessage bayanai don aiki dake waje, idan ake ganin ake ƙara kwayar sayHelloWorld() a ƙarƙashin, sMessage za a iya ginafiya bayanai a ƙarƙashin kwayar sayHelloWorld() (a farkon ƙarƙashin), wanda zai nuna rahoto "hello world".
Tukuru ƙabara dake yauyi
A ginafiya kwayar aiki dake waje a cikin kwayar aiki zai iya zama abin da zai iya zama kwayar aiki dake yauyi. Misali:
var iBaseNum = 10; function addNum(iNum1, iNum2) { function doAdd() { return iNum1 + iNum2 + iBaseNum; } return doAdd(); }
A cikin haka, addNum() a bai ginafiya kwayar doAdd() (ƙabara). Kwayar aiki ce kwayar ƙabara, saboda ta za a iya ginafiya ginafiyawa dake kwayar aiki na waje, kuma kuma kwayar kai tsakiyar dake. Kwarewarta na farko ta addNum() ita ce kwayar doAdd(), wanda za a iya ginafiya abin da yauyi da canzawa daga abin da yauyi da kai tsakiyar dake, kuma kuma kwayar kai tsakiyar dake.
Karamin bayanin da za a gudanar a cikin haka shine, doAdd() a bai ginafiya canzawa ba, amma yana ginafiya ginafiyawa dake yauyi daga yankin aiki.
Aka rimi, ƙabara ana wakilta a ECMAScript dake tsammanar da yauyi, wanda za a iya ginafiya abin da yauyi.
Tafita:Kamar yadda ake ginafiya kwayar function aiki, kama ake ginafiya ƙabara, saboda su za a iya zama abin da zai iya zama kwayar aiki dake yauyi.
- Yanwada na baya Kwayar Function
- Yanwada na baya Ginafiyawa da abin da a kai wa kwayoyin kan jiki