Если вы транслируете и имеете доступ к ES6, вы можете использовать синтаксис распространения, который специфически применяет каждый итеративный элемент объекта как дискретный аргумент, как раз $.when()
нуждается в нем.
$.when(...deferreds).done(() => {
// do stuff
});