有人可以解释一下为什么下面的代码有效吗?
function getLastName()
{
    fullName.lastName = "World";   
}
function writeName()
{
    fullName = {};
    fullName.firstName = "Hello";
    getLastName();
    document.write(fullName.firstName + " " + fullName.lastName);
}
writeName();
由于某种原因,getLastName()可以达到局部其封闭方法的局部状态。这怎么行?而且我应该利用 Javascript 的这个特性还是被认为是一种不好的做法?如果这是一个不好的做法,你能解释一下为什么吗?