More efficient way to write loop?

I’m still learning AS3 so bare with me. I’m curious if there is a more efficient way to write this function. Just seems too bulky but it does work. Any advice would be appreciated. Thanks!


for (var i:Number = 0; i<btnArray.length; i++) {
 btnArray*.addEventListener(MouseEvent.MOUSE_DOWN, manageMouseDown);
 btnArray*.addEventListener(MouseEvent.MOUSE_OVER, manageMouseOver);
 
 function manageMouseOver(e:MouseEvent):void {
  e.target.buttonMode = true;
 }
 
 function manageMouseDown(e:MouseEvent):void {
  for (var j:Number = 0; j<btnArray.length; j++) {
   if (e.target == btnArray[j]) {
    total = total + costArray[j];
    TweenMax.to(spotArray[j], 3, {scaleX:1.35, scaleY:1.35, ease:Elastic.easeOut});
    a.color = 0xFF9933;
    spotArray[j].orange.transform.colorTransform = a;
    spotArray[j].alpha = .75;
    spotArray[j].spotnum.htmlText = j+1;
    myTotal.htmlText = "$"+total.toFixed(2);
    togArray[j].addEventListener(MouseEvent.MOUSE_OVER, toggleOver);
    togArray[j].addEventListener(MouseEvent.MOUSE_DOWN, toggleDown);
    togArray[j].alpha = 1;
    spotArray[j].removeEventListener(MouseEvent.MOUSE_DOWN, manageSpotDown);
   }
  }
  e.target.alpha = 0.5;
  e.target.removeEventListener(MouseEvent.MOUSE_DOWN, manageMouseDown);
 }
}