In that example, I would name the inner "obj" variable in the checkHealth() function to something else, e.g. checkHealth(thisobj). The reason for that is the way that Javascript works the scope outside the function is available inside the function. So if you access the obj variable inside the checkHealth function you would probably be accessing the one passed to the function instead of the one on the first line, but it can be confusing and prone to error. By using "thisobj" (or some other name) you can clearly know which object you're referencing. Other than that, the thisobj variable inside the checkHealth function is the same as the obj variable you got from findObj...you can do any/all of the same things to it (set(), get(), etc.). Do note as well that Javascript functions are synchronous by default, meaning that when you call a function all of the statements in that function will execute before the script continues with the next line after the function call.