Defiant Example

HTML

<script src="http://www.defiantjs.com/defiant.js/dist/defiant-latest.min.js"></script>
<h3>Keywords containing "r"</h3>
<pre id="output1"></pre>

<h3>Values containing "lo"</h3>
<pre id="output2"></pre>

JavaScript

var byId = function(s) {
    return document.getElementById(s);
  },
  data = [{
      "foo": "bar",
      "bar": "sit"
    },
    {
      "foo": "lorem",
      "bar": "ipsum"
    },
    {
      "foo": "dolor",
      "bar": "amet"
    }
  ],
  res1 = JSON.search(data, "//*[contains(name(), 'r')]/.."),
  res2 = JSON.search(data, "//*[contains(text(), 'lo')]/..");

byId('output1').innerHTML = JSON.stringify(res1, null, '   ');
byId('output2').innerHTML = JSON.stringify(res2, null, '   ');