Как сделать выход из родительской функции (return), внутри вложенной функции:

var $break = {};
  
function getElement() {
  
  try {
  
    [1, 2, 3].forEach(function (element) {
  
      if (element % 2 == 0) {
        // "return" из getElement
        alert('found: ' + element); // found: 2
        $break.data = element;
        throw $break;
      }
  
    });
  
  } catch (e) {
    if (e == $break) {
      return $break.data;
    }
  }
  
  return null;
}
  
alert(getElement()); // 2

Здесь ключевая логика в том, что любое исключение порождаемое на любой вложенности, полностью останавливает работу всего дальнейшего скрипта.

Обычно я использую такой путь:

var func = (function () {
    var return_value = 0;

    for (var i = 0; i < 10; i+=1) {
        (function (x) {
            var some_another_value = 0;

            return_value += some_another_value + x;
        })(i);
    }

    return return_value;
})();
 

То есть ключевая логика здесь это return_value

Он более прост в понимании и реализации, но вариант от Сошникова более изящен.