Created
August 20, 2018 19:39
-
-
Save geneparcellano/aef1a0d51d77ed9d69b45f1a35fae40b to your computer and use it in GitHub Desktop.
Simple JavaScript String Search. Search an array of objects.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const sampleArr = [{ | |
"Name": "Maggy F. Tyson", | |
"City": "Maracalagonis", | |
"Email": "Morbi@Naminterdumenim.org" | |
}, | |
{ | |
"Name": "Abra Q. Cleveland", | |
"City": "Dole", | |
"Email": "Integer@estNunc.net" | |
}, | |
{ | |
"Name": "Kelsey P. Carpenter", | |
"City": "Reana del Rojale", | |
"Email": "vitae.sodales.at@facilisisSuspendissecommodo.net" | |
}, | |
{ | |
"Name": "Sacha I. Reese", | |
"City": "Penna San Giovanni", | |
"Email": "venenatis.lacus.Etiam@pede.com" | |
}, | |
{ | |
"Name": "Hope Z. Caldwell", | |
"City": "Calvera", | |
"Email": "mauris@id.ca" | |
}, | |
{ | |
"Name": "Adam H. Hahn", | |
"City": "Court-Saint-Etienne", | |
"Email": "arcu.Sed.eu@diamloremauctor.edu" | |
}, | |
{ | |
"Name": "Griffin I. Nichols", | |
"City": "Pocatello", | |
"Email": "natoque.penatibus.et@mollisnon.net" | |
}, | |
{ | |
"Name": "Dominique T. Wilder", | |
"City": "Saguenay", | |
"Email": "a.dui@non.org" | |
}, | |
{ | |
"Name": "Phelan N. Tyson", | |
"City": "Kearney", | |
"Email": "Donec.fringilla@mauriseu.net" | |
}, | |
{ | |
"Name": "Hector H. Fischer", | |
"City": "Soma", | |
"Email": "elit.Nulla@aultricies.edu" | |
}, | |
{ | |
"Name": "Heather L. Copeland", | |
"City": "Santa Luzia", | |
"Email": "nunc.ac.mattis@semper.co.uk" | |
}, | |
{ | |
"Name": "Dustin T. Harrell", | |
"City": "Oostkerke", | |
"Email": "in.faucibus.orci@Duis.ca" | |
}, | |
{ | |
"Name": "Jordan R. Hunt", | |
"City": "Nieuwkerken-Waas", | |
"Email": "aliquam.enim.nec@volutpatornare.net" | |
}, | |
{ | |
"Name": "Lamar L. Walter", | |
"City": "Nashik", | |
"Email": "Donec@fermentummetusAenean.co.uk" | |
}, | |
{ | |
"Name": "Brian V. Mcintyre", | |
"City": "Côte Saint-Luc", | |
"Email": "ligula.consectetuer.rhoncus@magnanecquam.co.uk" | |
}, | |
{ | |
"Name": "Belle S. Wilder", | |
"City": "Curon Venosta/Graun im Vinschgau", | |
"Email": "non@amifringilla.ca" | |
}, | |
{ | |
"Name": "Xandra U. Joseph", | |
"City": "St. Asaph", | |
"Email": "neque.et.nunc@vestibulum.co.uk" | |
}, | |
{ | |
"Name": "Bianca I. Sutton", | |
"City": "Jackson", | |
"Email": "vitae.semper@magnis.co.uk" | |
}, | |
{ | |
"Name": "Solomon C. Watkins", | |
"City": "Townsville", | |
"Email": "In.ornare@sodaleselit.ca" | |
}, | |
{ | |
"Name": "Brock W. Knight", | |
"City": "Panchià", | |
"Email": "et.malesuada.fames@orcitincidunt.org" | |
}, | |
{ | |
"Name": "Flavia X. Atkinson", | |
"City": "Pollena Trocchia", | |
"Email": "auctor.quis.tristique@loremauctor.ca" | |
}, | |
{ | |
"Name": "Adam D. Sheppard", | |
"City": "Workum", | |
"Email": "et.netus@vitaevelit.edu" | |
}, | |
{ | |
"Name": "Lionel E. Mclaughlin", | |
"City": "Eindhoven", | |
"Email": "nec.eleifend.non@ridiculus.ca" | |
}, | |
{ | |
"Name": "MacKenzie F. Mosley", | |
"City": "Warrnambool", | |
"Email": "gravida.sit.amet@luctus.ca" | |
}, | |
{ | |
"Name": "Kiayada T. Guerrero", | |
"City": "Duisburg", | |
"Email": "ipsum.nunc@dolorelitpellentesque.net" | |
}, | |
{ | |
"Name": "Wyoming J. Peck", | |
"City": "Buin", | |
"Email": "eu.tempor.erat@blandit.net" | |
}, | |
{ | |
"Name": "Yoshio P. Mcdonald", | |
"City": "Maasmechelen", | |
"Email": "vitae.aliquet.nec@nonenim.edu" | |
}, | |
{ | |
"Name": "Tamara S. Knox", | |
"City": "Mission", | |
"Email": "lobortis@at.net" | |
}, | |
{ | |
"Name": "Veda G. Vazquez", | |
"City": "St. Ives", | |
"Email": "ullamcorper@tellusimperdietnon.net" | |
}, | |
{ | |
"Name": "Colette P. Spencer", | |
"City": "Rouyn-Noranda", | |
"Email": "tempor.lorem@molestie.net" | |
}, | |
{ | |
"Name": "Rooney N. Gallagher", | |
"City": "Vichy", | |
"Email": "eget.ipsum@luctusvulputate.co.uk" | |
}, | |
{ | |
"Name": "Michelle A. Gilmore", | |
"City": "Isle-aux-Coudres", | |
"Email": "dis.parturient.montes@loremegetmollis.org" | |
}, | |
{ | |
"Name": "Lesley W. Mckay", | |
"City": "St. Clears", | |
"Email": "lacus@laciniamattisInteger.co.uk" | |
}, | |
{ | |
"Name": "Jelani Z. Montgomery", | |
"City": "Sunshine Coast Regional District", | |
"Email": "lorem@nunc.com" | |
}, | |
{ | |
"Name": "Cassidy P. Oneil", | |
"City": "Bois-de-Villers", | |
"Email": "libero@Curabitur.co.uk" | |
}, | |
{ | |
"Name": "Lucy I. Browning", | |
"City": "Mal", | |
"Email": "risus@consequat.net" | |
}, | |
{ | |
"Name": "David Z. Dyer", | |
"City": "Toronto", | |
"Email": "risus.quis@egestasurnajusto.com" | |
}, | |
{ | |
"Name": "Jerry L. Lynch", | |
"City": "Jennersdorf", | |
"Email": "ipsum.cursus@vitae.org" | |
}, | |
{ | |
"Name": "Aaron D. Espinoza", | |
"City": "Ghislarengo", | |
"Email": "sem@vel.co.uk" | |
}, | |
{ | |
"Name": "Lane D. Alston", | |
"City": "Trani", | |
"Email": "tincidunt@urna.co.uk" | |
}, | |
{ | |
"Name": "Rudyard C. Whitney", | |
"City": "Provost", | |
"Email": "lobortis.augue.scelerisque@iaculisodioNam.co.uk" | |
}, | |
{ | |
"Name": "Ulric A. Buck", | |
"City": "Pavone del Mella", | |
"Email": "mi.Aliquam@Duisvolutpat.edu" | |
}, | |
{ | |
"Name": "Kasimir D. Robertson", | |
"City": "Nizamabad", | |
"Email": "et.netus@penatibus.ca" | |
}, | |
{ | |
"Name": "Laura S. Kelly", | |
"City": "Neunkirchen", | |
"Email": "vitae.purus.gravida@dolordapibusgravida.edu" | |
}, | |
{ | |
"Name": "Clio Y. Franklin", | |
"City": "Maasmechelen", | |
"Email": "varius.ultrices.mauris@tempusnonlacinia.edu" | |
}, | |
{ | |
"Name": "Wing U. Oneil", | |
"City": "Elbląg", | |
"Email": "Mauris@Curabiturut.com" | |
}, | |
{ | |
"Name": "Cameran R. Hyde", | |
"City": "Minneapolis", | |
"Email": "Donec@CuraePhasellusornare.com" | |
}, | |
{ | |
"Name": "Zahir S. Wilson", | |
"City": "Libramont-Chevigny", | |
"Email": "Donec.feugiat.metus@cursusaenim.com" | |
}, | |
{ | |
"Name": "Iliana M. Padilla", | |
"City": "Vico del Gargano", | |
"Email": "vulputate@tortor.net" | |
}, | |
{ | |
"Name": "Tarik Y. Hancock", | |
"City": "Sannazzaro de' Burgondi", | |
"Email": "eu.eleifend@magnaSuspendisse.ca" | |
}, | |
{ | |
"Name": "Magee T. Wright", | |
"City": "Sankt Wendel", | |
"Email": "et.risus@etrutrumnon.org" | |
}, | |
{ | |
"Name": "Zachary L. Lott", | |
"City": "Couthuin", | |
"Email": "fermentum@magnisdisparturient.org" | |
}, | |
{ | |
"Name": "Susan G. Curry", | |
"City": "Canela", | |
"Email": "egestas.rhoncus.Proin@Classaptent.net" | |
}, | |
{ | |
"Name": "Simone A. Bentley", | |
"City": "Ruvo del Monte", | |
"Email": "risus.Quisque.libero@arcu.net" | |
}, | |
{ | |
"Name": "Delilah F. Hahn", | |
"City": "St. John's", | |
"Email": "gravida.mauris.ut@adipiscingligulaAenean.ca" | |
}, | |
{ | |
"Name": "Nicole H. Bradley", | |
"City": "McCallum", | |
"Email": "sit@turpis.org" | |
}, | |
{ | |
"Name": "August F. Cherry", | |
"City": "Lampa", | |
"Email": "a.tortor@risus.co.uk" | |
}, | |
{ | |
"Name": "Thomas L. Ratliff", | |
"City": "Isola di Capo Rizzuto", | |
"Email": "dui.augue@Nulla.com" | |
}, | |
{ | |
"Name": "Autumn C. Perry", | |
"City": "Saint-Louis", | |
"Email": "lacinia@augueeu.ca" | |
}, | |
{ | |
"Name": "Thane I. Christian", | |
"City": "Fernie", | |
"Email": "et.euismod@odio.edu" | |
}, | |
{ | |
"Name": "Quinlan D. Bentley", | |
"City": "Mühlheim am Main", | |
"Email": "massa.Mauris.vestibulum@nuncullamcorper.co.uk" | |
}, | |
{ | |
"Name": "Debra M. Huffman", | |
"City": "New Bombay", | |
"Email": "vel.faucibus@tempus.co.uk" | |
}, | |
{ | |
"Name": "Alyssa W. Everett", | |
"City": "Calice al Cornoviglio", | |
"Email": "iaculis@ornareplaceratorci.net" | |
}, | |
{ | |
"Name": "Zoe I. Curry", | |
"City": "OugrŽe", | |
"Email": "Morbi.metus.Vivamus@felispurus.com" | |
}, | |
{ | |
"Name": "Porter A. Chase", | |
"City": "Machelen", | |
"Email": "vestibulum@sedconsequatauctor.ca" | |
}, | |
{ | |
"Name": "Ferris Z. Banks", | |
"City": "Buzet", | |
"Email": "parturient.montes.nascetur@Proinsed.com" | |
}, | |
{ | |
"Name": "Wayne F. Dillon", | |
"City": "Ussassai", | |
"Email": "Cras.pellentesque@nisidictumaugue.net" | |
}, | |
{ | |
"Name": "Damian L. Kelley", | |
"City": "Stade", | |
"Email": "non.massa.non@sample.net" | |
}] | |
let search = (arr, str='') => { | |
let result = []; | |
str = str.toLowerCase(); | |
arr.forEach(obj => { | |
Object.values(obj).find(val => { | |
if (String(val).toLowerCase().indexOf(str) > -1) { | |
result.push(obj); | |
} | |
}) | |
}); | |
return result; | |
} | |
console.log(search(sampleArr, '.net')); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment