Movement function

My code wont work as i want to.
My target MC jumps back and forth when it reaches the endX and endY… Please?

movement = function (moveIsActive, target, endX, endY) {
    if (moveIsActive) {
        a = Math.atan2(endY-target._y, endX-target._x);
        target._x += Math.cos(a)*speed;
        target._y += Math.sin(a)*speed;
        if (target._x==endX) {
            if (target._y==endY) {
                moveIsActive = false;
            }
        }
    } else {
    }
};