EDIT: This was writtent 10 years ago. I don't consider this to be an up to date answer.
Realistically... by not overwriting it. You could always control access by wrapping it in an object that only offers GetObj with no SetObj, but of course, the wrapper is equally liable to overwriting, as are its "private" member properties that would be "hidden" via the GetObj method.
Actually, question is a dupe:
Can Read-Only Properties be Implemented in Pure JavaScript?
EDIT:
After reading http://javascript.crockford.com/private.html , it is possible to use closure to create variable references that are truely inaccessible from the outside world. For instance:
function objectHider(obj)
{
this.getObject=function(){return obj;}
}
var someData={apples:5,oranges:4}
var hider=new objectHider(someData);
//... hider.getObject()
where the reference to obj in objectHider cannot be modified after object creation.
I'm trying to think of a practical use for this.