создаёт функцию, принимающую три аргумента, возвращает её и отдаёт на исполнение, передавая три аргумента их двух.
данный код эквивалентен этому :
(function(window,document, undefined){})(window, document);
// ====>
function func(window, document, undefined){ };
func(window, document);
в функции первый аргумент равен window, второй - document, третий - типу undefined.
делается это для замыкания и для укорачивания имён window,document,undefined при сжатии скрипта.