function User( properties ) {
       for ( var i in properties ) { (function(which){
    var p=i;
       
        which[ "get" + p ] = function() {
            return properties[p];
        };        which[ "set" + p ] = function(val) {
            properties[p] = val;
        };
    })(this); }
}
var user = new User({
    name: "Bob",
    age: 44
});alert( user.name == null );
alert( user.getname() == "Bob" );
user.setage( 22 );
alert( user.getage() == 22 );请问代码第二行 function(which)中的which是怎么来的?
我在看精通javascript时看到的,看不明白。请教高手。