Manteniendo viva la variable en una función javascript

Quiero alojar una variable en una función Esta variable cambiará de estado dependiendo de la interacción del usuario

function plan_state(current){
    if (current != ''){
     state = current;
    }
    else {
     return state;
    }
}

cuando se carga el documento, llamo plan_state ('yo');

cuando suceden ciertas cosas, puedo llamar a plan_state ('querido')

El problema, ejecuto una función y quiero comprobar el estado actual ..

alert(plan_state());

Me vuelvo indefinido y por lo menos debo ser 'yo' cuando configuro esta carga.

¿Qué estoy haciendo mal?