Como encontrar object na matriz por propriedade em javascript?

Existe um array com muitos objects. Necessário para localizar um object ou objects nessa matriz por propriedade.

Obj de input:

var Obj = [ {"start": 0, "length": 3, "style": "text"}, {"start": 4, "length": 2, "style": "operator"}, {"start": 4, "length": 3, "style": "error"} ]; 

Resultado de saída: (procure por “start” com valor 4)

  var result = [ {"start": 4, "length": 2, "style": "operator"}, {"start": 4, "length": 3, "style": "error"} ]; 

_findItemByValue (Obj, “start”, 4);

 var _findItemByValue = function(obj, prop, value) { return obj.filter(function(item) { return (item[prop] === value); }); } 

Compatível com todos, exceto IE6, IE7, IE8, mas existe polyfill .

 if (!Array.prototype.filter) { Array.prototype.filter = function (fn, context) { var i, value, result = [], length; if (!this || typeof fn !== 'function' || (fn instanceof RegExp)) { throw new TypeError(); } length = this.length; for (i = 0; i < length; i++) { if (this.hasOwnProperty(i)) { value = this[i]; if (fn.call(context, value, i, this)) { result.push(value); } } } return result; }; }