Arrays in Function Problems

Why does this work


for (k=0; k<files.length; k++) {
	newfile_mc.onRelease = function() {
		trace(files);
		trace(k);
	}
}

but this doesn’t work?


for (k=0; k<files.length; k++) {
	newfile_mc.onRelease = function() {
		trace(files[k]);
	}
}

I have files defined as an array in the code above this.