Junior
Функсияи тоза чист?
sobes.tech AI
Ҷавоб аз AI
Функсияи тоза — ин функсияест, ки ду шарти зеринро қонеъ мекунад:
- Детерминизм: Вақте ки бо аргументҳои якхела даъват мешавад, ҳамеша натиҷаи якхела медиҳад.
- Бе таъсири тараф: Вай ҳолати берунӣ ё маълумотҳои берун аз доираи худро тағир намедиҳад (масалан, тағир додани тағйирёбандаҳои глобалӣ, навиштани маълумот ба файл, иҷрои дархостҳои шабакавӣ).
Масалан функсияи тоза:
// Функсияи тоза: ҳамеша ҷамъи ду рақамро бармегардонад, бе тағир додани тағйирёбандаҳои берунӣ.
function add(a, b) {
return a + b;
}
Масалан функсияи нозо (бо таъсири тараф):
// Функсияи нозо: тағир медиҳад тағйирёбандаи берунӣ, ки counter аст.
let counter = 0;
function incrementCounter() {
counter++;
return counter;
}
Масалан функсияи нозо (беҳузур, номуайян):
// Функсияи нозо: натиҷа аз вақти ҳозира вобаста аст.
function getCurrentTime() {
return new Date().getTime();
}