dividir la matriz de objetos en matrices separadas basadas en una propiedad

Digamos que tengo una matriz como esta:

var arr = [
    {type:"orange", title:"First"},
    {type:"orange", title:"Second"},
    {type:"banana", title:"Third"},
    {type:"banana", title:"Fourth"}
];

y quiero que esto se divida en matrices que tengan objetos que tengan el mismo tipo, así que:

[{type:"orange", title:"First"},
{type:"orange", title:"Second"}]

[{type:"banana", title:"Third"},
{type:"banana", title:"Fourth"}]

Pero quiero hacer esto genéricamente para no tener una declaración if que especifique naranja o banana

// not like this
for (prop in arr){
    if (arr[prop] === "banana"){
       //add to new array
    }
}

¿Pensamientos? JQuery y Underscore son ambas opciones para usar.

Respuestas a la pregunta(5)

Su respuesta a la pregunta