Q:

Collision "Glitching," if you will, in Canvas

There is an arc that detects where the bottom object is. This arc, or ball, bounces fine until the 2nd bounce, and glitches out in the floor. The variable ball.gSy controls the speed in which the ball falls. Right now it's being multiplied by 10 (ball.y += 10*ball.gSy;) to speed up the effects of the glitching in the floor. Also, you can use the arrow keys to control the ball, and it does get stuck in the side walls, but the bottom floor issue is the one I'm particularly curious about. 
Here is a jsfiddle link to better satisfy your patronage:
http://jsfiddle.net/nhQtk/

A:

Your problem is that you move the ball down, but when there's a collision, you're not moving the ball back up to a position where it's not stuck in the floor.
So you are correctly detecting a collision, but your ball is already partly through the wall and can't move back up.
Here's a rough idea of what you need to do:
 ball.y += 10*ball.gSy;
 for(var i = 0; i < objects.length; i++){
                        if(ball.x > objects[i].x - ball.r &&
                          ball.y > objects[i].y - ball.r && 
                          ball.x < ball.r + objects[i].x + objects[i].w &&
                          ball.y < ball.r + objects[i].y + objects[i].h)
                      {
                            ball.gSy = (-1 * ball.gSy);
                            ball.y -= 10;// <--- important step
                            // You need to calculate how much to move the ball BACK up to where it has not quite hit the floor.   

                       }

