Jquery cómo encontrar un objeto por atributo en una matriz

Dado Tengo una serie de objetos "de propósito":

//array of purpose objects:
var purposeObjects = [
    {purpose: "daily"},
    {purpose: "weekly"},
    {purpose: "monthly"}
];

(por simplicidad, estoy omitiendo otros atributos)

Ahora quiero tener un método que devuelva uno específico de los objetos si se encuentra un nombre de propósito coincidente.

Esto no está funcionando

function findPurpose(purposeName){
    return $.grep(purposeObjects, function(){
      return this.purpose == purposeName;
    });
};

findPurpose("daily");

pero en realidad devuelve una matriz vacía:

[]

Estoy usando JQuery 1.5.2. También lo intenté con $ .each () pero sin suerte. Aparentemente, la mayoría de los métodos JQuery están diseñados para su uso con elementos DOM (comofilter().

¿Alguna idea sobre cómo lograr esto?

Respuestas a la pregunta(10)

Su respuesta a la pregunta