Хатои дастнорас кардани парчам дар функсия дар JavaScript
Фарз мекунем, ки мо мехоҳем функсияе созем, ки параметрҳои он рақам ва адад гирифта, ва тафтиш кунад, оё рақами додашуда дар адад мавҷуд аст:
function func(needle, num) {
// дар инҷо код хоҳад буд
}
Мо аз функсияи худ ин тавр истифода мебарем:
console.log(func('3', '12345')); // true-ро чоп мекунад
Як барномасоз ҳалли ин масъаларо навиштааст:
function func(needle, num) {
for (let digit of num) {
if (digit === needle) {
return true;
} else {
return false;
}
}
}
Ин ҳал, ҳамвора, нодуруст кор мекунад.
Масъала ин аст, ки дар сикл шарте навишта шудааст,
ки дар такрори якум
як return иҷро мешавад,
ё дуюм, ки боиси
баромадан аз сикл ва аз функсия мегардад.
Биёед коди худро ба таври дуруст аз нависем, бо истифода аз парчамҳои пинҳонӣ дар функсияҳо:
function func(needle, num) {
for (let digit of num) {
if (digit === needle) {
return true;
}
}
return false;
}