Arrays in JavaScript have several methods for filtering, mapping, or folding that require a callback. Not having a return statement in such a
callback function is most likely a mistake, because the processing of the array uses the return value of the callback. If there is no return, the
callback will implicitly return undefined, which will likely fail.
This rule applies to the following methods of an array:
Array.from Array.prototype.every Array.prototype.filter Array.prototype.find Array.prototype.findLast Array.prototype.findIndex Array.prototype.findLastIndex Array.prototype.map Array.prototype.flatMap Array.prototype.reduce Array.prototype.reduceRight Array.prototype.some Array.prototype.sort Array.prototype.toSorted
let arr = ["a", "b", "c"];
let merged = arr.reduce(function(a, b) {
a.concat(b);
}); // Noncompliant: No return statement, will result in TypeError
let arr = ["a", "b", "c"];
let merged = arr.reduce(function(a, b) {
return a.concat(b);
}); // merged === "abc"