Skip to content

Instantly share code, notes, and snippets.

@mzabriskie
Last active August 29, 2015 14:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mzabriskie/fe85e6ea69b5049d17dd to your computer and use it in GitHub Desktop.
Save mzabriskie/fe85e6ea69b5049d17dd to your computer and use it in GitHub Desktop.
Benchmark parsing a String which is potentially JSON
var JSON_START = /^\s*(\[|\{[^\{])/;
var JSON_END = /[\}\]]\s*$/;
function benchmark(label, fn, data) {
console.time(label);
for (var i=0; i<1000; i++) {
fn(data);
}
console.timeEnd(label);
}
function regxTest(data) {
if (JSON_START.test(data) && JSON_END.test(data)) {
data = JSON.parse(data);
}
return data;
}
function jsonTest(data) {
try {
data = JSON.parse(data);
} catch (e) {}
return data;
}
// JSON data
var jsonSmall = JSON.stringify({
"guid": "5a5f8e3a-9934-4b2e-b2e3-72d03ac65793",
"isActive": true,
"picture": "http://placehold.it/32x32",
"first_name": "Jody",
"last_name": "Webster",
"company": "MEDIFAX",
"email": "jody.webster@medifax.name"
});
var jsonMedium = JSON.stringify([
{
"_id": "55232bd9cff095dbc5a588db",
"index": 0,
"guid": "235bc66e-2c7a-4240-a2f7-eb6ee960f84f",
"isActive": true,
"balance": "$2,874.26",
"picture": "http://placehold.it/32x32",
"age": 32,
"eyeColor": "green",
"name": {
"first": "Berg",
"last": "Bradford"
},
"company": "ISOSTREAM",
"email": "berg.bradford@isostream.tv",
"phone": "+1 (874) 571-2745",
"address": "361 Thames Street, Dexter, Michigan, 1378",
"about": "Ipsum quis tempor voluptate aute minim id veniam velit cupidatat ex nulla tempor. Commodo amet nostrud eiusmod elit laborum. Anim exercitation incididunt quis do. Ipsum culpa duis exercitation minim laboris ut sunt laborum anim duis veniam laboris qui ullamco. Velit sint occaecat eiusmod eu aliqua nulla irure enim anim quis ea Lorem ullamco. Officia velit ipsum quis ex velit est nulla labore mollit.\r\n",
"registered": "Wednesday, July 30, 2014 7:11 AM",
"latitude": -80.77155,
"longitude": 104.523109,
"tags": [
"mollit",
"nostrud",
"cupidatat",
"qui",
"dolore",
"labore",
"occaecat"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Hunter Knapp"
},
{
"id": 1,
"name": "Lydia Owen"
},
{
"id": 2,
"name": "Imelda Wood"
}
],
"greeting": "Hello, Berg! You have 8 unread messages.",
"favoriteFruit": "banana"
}
]);
var jsonLarge = JSON.stringify([
{
"_id": "55232b8a3e88a8e1d26be72a",
"index": 0,
"guid": "03cd6af2-1624-4dec-adf3-494c16b7f4a7",
"isActive": false,
"balance": "$1,217.64",
"picture": "http://placehold.it/32x32",
"age": 22,
"eyeColor": "blue",
"name": {
"first": "English",
"last": "Mitchell"
},
"company": "GENEKOM",
"email": "english.mitchell@genekom.us",
"phone": "+1 (927) 517-2287",
"address": "719 Hampton Place, Tedrow, Wisconsin, 9096",
"about": "Id eu eiusmod Lorem consequat minim et eu esse. Ut cupidatat velit nulla sunt nulla ullamco in et enim est. Nostrud exercitation sit eiusmod commodo esse duis duis. Sint ad eu aute aliquip velit nulla est est Lorem aliquip esse. Aute eu nulla adipisicing cillum do aliquip sint voluptate. Eiusmod proident anim quis non veniam fugiat nulla cupidatat aute minim laborum proident commodo non.\r\n",
"registered": "Saturday, March 21, 2015 5:48 AM",
"latitude": -13.052797,
"longitude": -158.486589,
"tags": [
"voluptate",
"laborum",
"esse",
"magna",
"ullamco",
"cupidatat",
"dolore"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Terri Glenn"
},
{
"id": 1,
"name": "Huff Kerr"
},
{
"id": 2,
"name": "Rosanne Puckett"
}
],
"greeting": "Hello, English! You have 9 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8a2aec16bf48b7f0d5",
"index": 1,
"guid": "e05f8829-bc26-42aa-8734-278bf7ddf9ab",
"isActive": true,
"balance": "$1,997.25",
"picture": "http://placehold.it/32x32",
"age": 23,
"eyeColor": "green",
"name": {
"first": "Powers",
"last": "Pollard"
},
"company": "COFINE",
"email": "powers.pollard@cofine.io",
"phone": "+1 (828) 572-3422",
"address": "588 Dank Court, Boykin, Oregon, 6803",
"about": "Nostrud laboris esse proident id exercitation deserunt duis nisi ullamco laborum nulla aliquip laborum. Mollit aliqua est non sunt. Adipisicing sunt quis do elit exercitation aliquip velit nisi duis ad tempor do.\r\n",
"registered": "Sunday, November 16, 2014 1:38 AM",
"latitude": 88.805216,
"longitude": 169.055266,
"tags": [
"enim",
"qui",
"Lorem",
"fugiat",
"fugiat",
"elit",
"non"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Kelly White"
},
{
"id": 1,
"name": "Chavez Manning"
},
{
"id": 2,
"name": "Wilkins Webb"
}
],
"greeting": "Hello, Powers! You have 8 unread messages.",
"favoriteFruit": "banana"
},
{
"_id": "55232b8a0ac12487d00bb524",
"index": 2,
"guid": "878c9367-aedf-472d-be7c-211a72ac8d59",
"isActive": true,
"balance": "$1,670.11",
"picture": "http://placehold.it/32x32",
"age": 34,
"eyeColor": "blue",
"name": {
"first": "Sadie",
"last": "Velazquez"
},
"company": "TASMANIA",
"email": "sadie.velazquez@tasmania.ca",
"phone": "+1 (856) 490-2747",
"address": "641 Aberdeen Street, Gracey, Colorado, 4093",
"about": "Ut aliquip adipisicing ex mollit ea adipisicing sint fugiat eu sunt deserunt veniam amet voluptate. Laboris in excepteur fugiat id ut occaecat minim laboris non. Commodo eiusmod laboris Lorem amet deserunt labore ullamco amet sint est aliqua officia. Ipsum Lorem pariatur veniam aute dolore labore. Reprehenderit voluptate ex consectetur aute pariatur excepteur in amet nisi quis amet. Lorem consequat commodo sint excepteur anim aliquip nostrud dolore magna.\r\n",
"registered": "Saturday, January 4, 2014 2:27 PM",
"latitude": -22.076821,
"longitude": 53.224589,
"tags": [
"ullamco",
"ad",
"commodo",
"eu",
"proident",
"duis",
"sunt"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Davis Blankenship"
},
{
"id": 1,
"name": "Briggs Cline"
},
{
"id": 2,
"name": "Meagan Benjamin"
}
],
"greeting": "Hello, Sadie! You have 7 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8a0be0d7d1b4c69444",
"index": 3,
"guid": "4c729af9-c5da-435f-9b46-77fbe0278e72",
"isActive": true,
"balance": "$1,817.07",
"picture": "http://placehold.it/32x32",
"age": 40,
"eyeColor": "green",
"name": {
"first": "Boyer",
"last": "Booker"
},
"company": "ZILLANET",
"email": "boyer.booker@zillanet.name",
"phone": "+1 (991) 473-3499",
"address": "575 Lawrence Street, Volta, North Carolina, 1329",
"about": "Laboris esse do aute in officia occaecat enim tempor adipisicing id ea occaecat consectetur. Esse ad occaecat reprehenderit et duis exercitation. Non nostrud in commodo ipsum excepteur. Amet tempor culpa esse cillum cillum sunt incididunt.\r\n",
"registered": "Saturday, February 22, 2014 9:06 AM",
"latitude": 0.047363,
"longitude": 72.71302,
"tags": [
"laboris",
"nisi",
"nulla",
"pariatur",
"amet",
"velit",
"nostrud"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Rosalind Buckley"
},
{
"id": 1,
"name": "Frye Dawson"
},
{
"id": 2,
"name": "Ray Pruitt"
}
],
"greeting": "Hello, Boyer! You have 9 unread messages.",
"favoriteFruit": "banana"
},
{
"_id": "55232b8a344bb8c3f9bef660",
"index": 4,
"guid": "0c3904a5-40ee-4907-85a2-226264e090ba",
"isActive": false,
"balance": "$1,682.60",
"picture": "http://placehold.it/32x32",
"age": 38,
"eyeColor": "blue",
"name": {
"first": "Kenya",
"last": "Parrish"
},
"company": "GYNK",
"email": "kenya.parrish@gynk.tv",
"phone": "+1 (885) 589-3731",
"address": "738 Lefferts Avenue, Clayville, South Dakota, 6094",
"about": "Non laboris dolor irure sunt. Aliqua Lorem elit exercitation Lorem anim anim dolore ut non esse. Mollit quis incididunt reprehenderit proident do. Anim minim minim commodo Lorem deserunt laborum eiusmod nostrud enim minim reprehenderit est incididunt.\r\n",
"registered": "Sunday, July 6, 2014 3:01 PM",
"latitude": -81.645996,
"longitude": -140.390443,
"tags": [
"elit",
"sit",
"mollit",
"irure",
"non",
"minim",
"irure"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Carmen Goodman"
},
{
"id": 1,
"name": "Stein Clayton"
},
{
"id": 2,
"name": "Figueroa Sykes"
}
],
"greeting": "Hello, Kenya! You have 7 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8ab1dc4a4780880ed1",
"index": 5,
"guid": "4a891062-f197-4411-aa08-9062a617463a",
"isActive": false,
"balance": "$1,692.04",
"picture": "http://placehold.it/32x32",
"age": 24,
"eyeColor": "blue",
"name": {
"first": "Hill",
"last": "Leblanc"
},
"company": "PROTODYNE",
"email": "hill.leblanc@protodyne.com",
"phone": "+1 (822) 592-2834",
"address": "283 Cooke Court, Dawn, Mississippi, 9779",
"about": "Exercitation aliqua veniam esse enim cupidatat minim nisi aute duis aliqua deserunt tempor eiusmod eu. Ea proident ipsum exercitation consequat minim proident ex ipsum dolor aute incididunt. Nulla in laboris pariatur eiusmod ut veniam do consectetur consequat proident ullamco est do mollit. In exercitation laborum do cillum. Esse duis tempor sunt laborum elit irure pariatur. In nostrud quis id voluptate proident.\r\n",
"registered": "Thursday, March 20, 2014 10:16 PM",
"latitude": -78.008586,
"longitude": 95.517146,
"tags": [
"sunt",
"quis",
"proident",
"est",
"culpa",
"nostrud",
"exercitation"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Montgomery James"
},
{
"id": 1,
"name": "Renee Small"
},
{
"id": 2,
"name": "Courtney Porter"
}
],
"greeting": "Hello, Hill! You have 6 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8ab3d52c2d7d672c0a",
"index": 6,
"guid": "b5639e79-0cd1-4ae5-a0cf-600f17af8842",
"isActive": false,
"balance": "$1,395.34",
"picture": "http://placehold.it/32x32",
"age": 36,
"eyeColor": "blue",
"name": {
"first": "Bishop",
"last": "Gilmore"
},
"company": "DARWINIUM",
"email": "bishop.gilmore@darwinium.org",
"phone": "+1 (845) 579-3217",
"address": "636 Arlington Place, Eastvale, Arkansas, 7941",
"about": "Reprehenderit ut amet cillum aliqua. Ullamco in sunt minim sit in mollit veniam et consectetur proident eu. Nisi occaecat ut in irure amet non elit labore. Exercitation voluptate consequat pariatur eu nisi et deserunt. Magna consectetur ullamco tempor nostrud laboris aliquip enim exercitation eiusmod culpa dolor anim dolor ullamco.\r\n",
"registered": "Monday, March 24, 2014 6:33 PM",
"latitude": -28.559406,
"longitude": 86.817269,
"tags": [
"nostrud",
"cupidatat",
"voluptate",
"esse",
"incididunt",
"consequat",
"aute"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Alvarez Hopkins"
},
{
"id": 1,
"name": "Ware Rich"
},
{
"id": 2,
"name": "Martinez Holder"
}
],
"greeting": "Hello, Bishop! You have 6 unread messages.",
"favoriteFruit": "apple"
},
{
"_id": "55232b8a5d274ab2a2d11423",
"index": 7,
"guid": "99a5657f-d357-4811-bd47-314052f4abff",
"isActive": false,
"balance": "$1,386.91",
"picture": "http://placehold.it/32x32",
"age": 29,
"eyeColor": "green",
"name": {
"first": "Battle",
"last": "Shepard"
},
"company": "GOLOGY",
"email": "battle.shepard@gology.info",
"phone": "+1 (820) 495-3982",
"address": "135 Hunts Lane, Fulford, Guam, 4384",
"about": "Reprehenderit cupidatat dolor exercitation cupidatat elit in. Ut velit pariatur esse cillum sit duis eiusmod. Dolore esse ad consequat dolor ex. Exercitation laboris cupidatat aliqua duis sunt dolor aliqua enim aliqua. Duis excepteur do excepteur deserunt. Commodo incididunt sint nisi laboris non anim reprehenderit. Commodo veniam id et tempor occaecat.\r\n",
"registered": "Wednesday, December 31, 2014 11:21 AM",
"latitude": 64.793179,
"longitude": -18.285594,
"tags": [
"amet",
"in",
"enim",
"minim",
"commodo",
"velit",
"id"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Howell Lindsey"
},
{
"id": 1,
"name": "Charles Woodard"
},
{
"id": 2,
"name": "Colette Gamble"
}
],
"greeting": "Hello, Battle! You have 6 unread messages.",
"favoriteFruit": "apple"
},
{
"_id": "55232b8a9587375316c10230",
"index": 8,
"guid": "3ac15d76-3109-4a01-b3fb-32f3197d358f",
"isActive": false,
"balance": "$1,950.96",
"picture": "http://placehold.it/32x32",
"age": 35,
"eyeColor": "brown",
"name": {
"first": "Kathie",
"last": "English"
},
"company": "ZILLACTIC",
"email": "kathie.english@zillactic.co.uk",
"phone": "+1 (945) 502-3359",
"address": "850 Downing Street, Riviera, Tennessee, 2164",
"about": "Deserunt ipsum occaecat ut quis et consequat eiusmod exercitation. Lorem pariatur adipisicing nisi deserunt fugiat ut ipsum culpa ex incididunt fugiat proident amet laboris. Qui ad anim enim eiusmod do aliquip aute dolore consequat consequat ex. Esse ex duis consectetur irure velit excepteur voluptate. Eiusmod duis cupidatat nostrud ad reprehenderit.\r\n",
"registered": "Sunday, September 21, 2014 2:14 AM",
"latitude": -88.675226,
"longitude": -31.38836,
"tags": [
"id",
"do",
"magna",
"ad",
"laboris",
"adipisicing",
"amet"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Lana Ferguson"
},
{
"id": 1,
"name": "Becky Richards"
},
{
"id": 2,
"name": "Jeannine Romero"
}
],
"greeting": "Hello, Kathie! You have 7 unread messages.",
"favoriteFruit": "banana"
},
{
"_id": "55232b8a899bdd9b69c606f6",
"index": 9,
"guid": "0c52ae53-3f39-4b76-a7bb-4beb720485fa",
"isActive": true,
"balance": "$1,274.36",
"picture": "http://placehold.it/32x32",
"age": 39,
"eyeColor": "brown",
"name": {
"first": "Sharpe",
"last": "Macdonald"
},
"company": "HOMELUX",
"email": "sharpe.macdonald@homelux.me",
"phone": "+1 (937) 592-2069",
"address": "593 Middagh Street, Westwood, Washington, 7523",
"about": "Fugiat aliquip fugiat proident do excepteur id adipisicing aliqua eu enim cillum occaecat. Amet sint id pariatur anim Lorem duis non. Et officia sit exercitation duis culpa pariatur eiusmod reprehenderit dolore proident. Occaecat voluptate occaecat officia amet veniam. Do commodo non id aute. Aliqua ea consectetur ex in dolore amet ad nostrud fugiat sit esse.\r\n",
"registered": "Friday, August 15, 2014 7:43 AM",
"latitude": 8.155862,
"longitude": 66.987638,
"tags": [
"ullamco",
"enim",
"nisi",
"pariatur",
"adipisicing",
"aliqua",
"aliquip"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Blankenship Frye"
},
{
"id": 1,
"name": "Barnes Conley"
},
{
"id": 2,
"name": "Mendoza Church"
}
],
"greeting": "Hello, Sharpe! You have 6 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8ae926fc27482f33c1",
"index": 10,
"guid": "039dfcd3-3334-45ce-8a7b-358e0ab0b657",
"isActive": false,
"balance": "$1,169.48",
"picture": "http://placehold.it/32x32",
"age": 39,
"eyeColor": "green",
"name": {
"first": "Cornelia",
"last": "Chan"
},
"company": "IDEGO",
"email": "cornelia.chan@idego.biz",
"phone": "+1 (964) 503-3409",
"address": "925 Applegate Court, Cresaptown, Vermont, 3058",
"about": "Minim enim nisi mollit dolor sit dolore labore elit. Aute dolor adipisicing ex laborum consequat adipisicing magna eu laboris minim consectetur est non. Fugiat reprehenderit proident aliquip incididunt sint et nulla commodo consectetur. Ad laborum cupidatat et eu proident anim aliquip non anim aliqua velit tempor Lorem. Laboris aliquip pariatur est amet cupidatat elit nostrud quis exercitation. Ex laborum sit duis nulla ullamco.\r\n",
"registered": "Thursday, September 25, 2014 4:29 PM",
"latitude": -88.668558,
"longitude": 95.085998,
"tags": [
"non",
"ad",
"nisi",
"est",
"minim",
"duis",
"elit"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Gale Booth"
},
{
"id": 1,
"name": "Lora Donovan"
},
{
"id": 2,
"name": "Johns Mcfadden"
}
],
"greeting": "Hello, Cornelia! You have 9 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8ab7c189ce9c980452",
"index": 11,
"guid": "002ba188-0dbc-4ba3-8a0c-6d90179c5584",
"isActive": false,
"balance": "$3,192.45",
"picture": "http://placehold.it/32x32",
"age": 34,
"eyeColor": "brown",
"name": {
"first": "Annmarie",
"last": "Byers"
},
"company": "PHARMACON",
"email": "annmarie.byers@pharmacon.biz",
"phone": "+1 (933) 529-3265",
"address": "416 Moore Street, Odessa, Alabama, 3270",
"about": "Consectetur in ipsum ad irure proident aliquip incididunt proident aliqua proident sit qui velit. Occaecat mollit fugiat dolore non aute. Pariatur minim est fugiat sunt non. Elit ut voluptate proident eiusmod. Labore est voluptate commodo consectetur ex nisi ex ea eu reprehenderit culpa proident qui ad. In mollit tempor duis do dolore ea.\r\n",
"registered": "Wednesday, April 23, 2014 5:01 PM",
"latitude": 86.909363,
"longitude": 84.66944,
"tags": [
"sit",
"eu",
"et",
"veniam",
"commodo",
"duis",
"irure"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Spencer Grant"
},
{
"id": 1,
"name": "Middleton Suarez"
},
{
"id": 2,
"name": "Sanford Reynolds"
}
],
"greeting": "Hello, Annmarie! You have 9 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8ae17ebe32daf76924",
"index": 12,
"guid": "75966eb0-8bbc-4751-a5d2-346bee2af70d",
"isActive": false,
"balance": "$2,541.46",
"picture": "http://placehold.it/32x32",
"age": 20,
"eyeColor": "green",
"name": {
"first": "Hoffman",
"last": "Serrano"
},
"company": "FRENEX",
"email": "hoffman.serrano@frenex.us",
"phone": "+1 (945) 425-3563",
"address": "765 Strong Place, Wattsville, Iowa, 1550",
"about": "Quis cupidatat veniam ad esse irure elit in excepteur adipisicing fugiat exercitation non reprehenderit. Et ullamco ullamco ea Lorem elit excepteur est ea adipisicing aliqua labore id. Cupidatat enim est Lorem ipsum eiusmod anim cillum eu cillum ipsum. Ea quis ut ex aliqua ea irure ut nulla irure voluptate eiusmod.\r\n",
"registered": "Thursday, January 29, 2015 1:37 PM",
"latitude": 14.227337,
"longitude": -159.25301,
"tags": [
"ad",
"nulla",
"ipsum",
"aliqua",
"culpa",
"dolore",
"reprehenderit"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Serena Byrd"
},
{
"id": 1,
"name": "Guerrero Randolph"
},
{
"id": 2,
"name": "Mcintyre Pope"
}
],
"greeting": "Hello, Hoffman! You have 6 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8a8444c657f7d8c66e",
"index": 13,
"guid": "4b547535-a194-460b-815c-944d237ce1f4",
"isActive": false,
"balance": "$2,212.67",
"picture": "http://placehold.it/32x32",
"age": 33,
"eyeColor": "green",
"name": {
"first": "Key",
"last": "Walter"
},
"company": "TOURMANIA",
"email": "key.walter@tourmania.io",
"phone": "+1 (867) 408-3789",
"address": "714 McDonald Avenue, Evergreen, Michigan, 9139",
"about": "Eu esse fugiat aliquip aute qui laborum. Veniam nulla magna nisi duis sint anim. Excepteur esse dolore dolore sunt reprehenderit tempor veniam ea.\r\n",
"registered": "Wednesday, July 9, 2014 2:00 PM",
"latitude": -23.926587,
"longitude": -139.738517,
"tags": [
"ipsum",
"nostrud",
"irure",
"ut",
"sint",
"labore",
"quis"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Sophia Dominguez"
},
{
"id": 1,
"name": "Dixon Ruiz"
},
{
"id": 2,
"name": "Shauna Baird"
}
],
"greeting": "Hello, Key! You have 9 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8ac4d32cf1219457cf",
"index": 14,
"guid": "3352dd82-c1f6-4d83-bf22-b21ed7d4626f",
"isActive": true,
"balance": "$3,929.24",
"picture": "http://placehold.it/32x32",
"age": 23,
"eyeColor": "brown",
"name": {
"first": "Merritt",
"last": "Conway"
},
"company": "NIXELT",
"email": "merritt.conway@nixelt.ca",
"phone": "+1 (907) 472-2522",
"address": "199 Jaffray Street, Norris, California, 5689",
"about": "Eiusmod minim velit sunt duis ad aliqua nulla aliquip eiusmod deserunt. Non aliqua proident adipisicing do occaecat aute minim aliqua. Ipsum occaecat labore proident cillum anim cupidatat duis exercitation mollit culpa elit aliquip. Officia ad irure sint occaecat sunt consequat sunt dolore cillum commodo adipisicing duis. Id labore amet minim nostrud. Dolor consequat fugiat veniam cupidatat laborum tempor magna ullamco exercitation cillum elit consectetur.\r\n",
"registered": "Saturday, October 4, 2014 6:06 PM",
"latitude": 24.445353,
"longitude": -128.866614,
"tags": [
"officia",
"ipsum",
"dolor",
"est",
"non",
"anim",
"occaecat"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Malone Jacobson"
},
{
"id": 1,
"name": "Parks Whitney"
},
{
"id": 2,
"name": "Bush Lamb"
}
],
"greeting": "Hello, Merritt! You have 10 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8aa6080eb00606e718",
"index": 15,
"guid": "31b2ed99-050f-46e0-9fda-40a23bd1bea6",
"isActive": false,
"balance": "$3,025.61",
"picture": "http://placehold.it/32x32",
"age": 27,
"eyeColor": "blue",
"name": {
"first": "Kimberley",
"last": "Rutledge"
},
"company": "APEXIA",
"email": "kimberley.rutledge@apexia.name",
"phone": "+1 (873) 536-3300",
"address": "631 Rewe Street, Oley, Indiana, 8575",
"about": "Officia proident officia dolore nisi laborum sunt ad. Consequat cillum aute incididunt fugiat cillum eiusmod occaecat aute est excepteur incididunt non fugiat cupidatat. Qui ea amet deserunt sunt laboris elit ea. Est cupidatat ex proident quis occaecat ex eu ad dolor aute.\r\n",
"registered": "Thursday, June 26, 2014 2:34 AM",
"latitude": 68.346547,
"longitude": -31.602123,
"tags": [
"in",
"non",
"laboris",
"aliqua",
"laborum",
"est",
"nostrud"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Mabel Floyd"
},
{
"id": 1,
"name": "Vasquez Wade"
},
{
"id": 2,
"name": "Wooten Beach"
}
],
"greeting": "Hello, Kimberley! You have 10 unread messages.",
"favoriteFruit": "banana"
},
{
"_id": "55232b8ab5defbcea0a68019",
"index": 16,
"guid": "db431150-a7a9-4d0b-92cb-9be078f5e387",
"isActive": true,
"balance": "$2,156.18",
"picture": "http://placehold.it/32x32",
"age": 38,
"eyeColor": "brown",
"name": {
"first": "Hanson",
"last": "Everett"
},
"company": "COMTRAK",
"email": "hanson.everett@comtrak.tv",
"phone": "+1 (987) 484-3597",
"address": "801 Canton Court, Waverly, Wyoming, 3166",
"about": "Dolore ex in consequat laborum qui enim cupidatat quis mollit pariatur qui nostrud. Nisi ex do duis amet sint aliqua consectetur commodo ad et ullamco culpa aliqua in. In fugiat id ad consequat. Labore ea labore veniam qui. Laboris elit quis labore commodo Lorem magna incididunt nisi quis excepteur commodo. Nisi elit ex et do deserunt sunt nulla nostrud proident eu.\r\n",
"registered": "Saturday, October 25, 2014 8:34 AM",
"latitude": -70.913311,
"longitude": -94.019221,
"tags": [
"aute",
"ipsum",
"sit",
"ut",
"esse",
"magna",
"consequat"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Shari Kirkland"
},
{
"id": 1,
"name": "Levine Ashley"
},
{
"id": 2,
"name": "Ursula Maldonado"
}
],
"greeting": "Hello, Hanson! You have 9 unread messages.",
"favoriteFruit": "apple"
},
{
"_id": "55232b8a9dfd892f5ae54141",
"index": 17,
"guid": "c5e8d38e-db72-49b6-bfa9-2835f132397d",
"isActive": true,
"balance": "$1,734.31",
"picture": "http://placehold.it/32x32",
"age": 35,
"eyeColor": "green",
"name": {
"first": "Tyson",
"last": "Butler"
},
"company": "TRI@TRIBALOG",
"email": "tyson.butler@tri@tribalog.com",
"phone": "+1 (871) 541-3859",
"address": "480 Decatur Street, Summerfield, Florida, 7142",
"about": "Duis labore voluptate consequat irure. Commodo dolor proident laborum pariatur eiusmod. Magna nostrud ad adipisicing amet nulla ullamco incididunt. Ad do cillum amet reprehenderit voluptate irure consequat et amet.\r\n",
"registered": "Saturday, January 17, 2015 11:34 PM",
"latitude": -0.500319,
"longitude": 118.4044,
"tags": [
"incididunt",
"minim",
"anim",
"nisi",
"laboris",
"do",
"et"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Sonia Cabrera"
},
{
"id": 1,
"name": "Nichole Ortiz"
},
{
"id": 2,
"name": "David Schwartz"
}
],
"greeting": "Hello, Tyson! You have 7 unread messages.",
"favoriteFruit": "apple"
},
{
"_id": "55232b8af6a56c8f21689fc3",
"index": 18,
"guid": "1c3fbdb7-1b17-414b-b086-4585d4bcb56d",
"isActive": false,
"balance": "$3,755.61",
"picture": "http://placehold.it/32x32",
"age": 35,
"eyeColor": "blue",
"name": {
"first": "Dawn",
"last": "Rowland"
},
"company": "KANGLE",
"email": "dawn.rowland@kangle.org",
"phone": "+1 (909) 489-3289",
"address": "984 Vandervoort Avenue, Ironton, Pennsylvania, 4368",
"about": "Velit ullamco aute aliquip exercitation elit eu sunt dolore ad proident. Deserunt dolor pariatur do quis in sunt ut. Mollit nostrud id esse ad cupidatat sit laborum dolor laborum labore voluptate. Ipsum cillum et in excepteur eu proident cillum. Magna ea ad aliqua consectetur velit esse labore cillum commodo. Fugiat duis sint commodo exercitation nisi laborum amet culpa ex mollit.\r\n",
"registered": "Monday, September 29, 2014 3:43 AM",
"latitude": 22.866064,
"longitude": -70.965107,
"tags": [
"ipsum",
"qui",
"incididunt",
"qui",
"aliqua",
"culpa",
"magna"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Hudson Stewart"
},
{
"id": 1,
"name": "Wilkinson Flowers"
},
{
"id": 2,
"name": "Kitty Zamora"
}
],
"greeting": "Hello, Dawn! You have 10 unread messages.",
"favoriteFruit": "banana"
},
{
"_id": "55232b8addc089a0a8d1b309",
"index": 19,
"guid": "58da1afd-536c-43a0-83e0-2b411ea9c224",
"isActive": false,
"balance": "$2,586.36",
"picture": "http://placehold.it/32x32",
"age": 30,
"eyeColor": "blue",
"name": {
"first": "Dona",
"last": "Alston"
},
"company": "BOSTONIC",
"email": "dona.alston@bostonic.info",
"phone": "+1 (981) 414-3375",
"address": "247 Cedar Street, Emerald, Alaska, 8526",
"about": "Nulla elit consequat excepteur ea minim mollit duis proident cillum proident cillum elit exercitation enim. Cillum sint cupidatat aliqua cupidatat laborum. Adipisicing consequat occaecat commodo est adipisicing. Magna qui nisi cillum deserunt.\r\n",
"registered": "Tuesday, August 5, 2014 3:22 PM",
"latitude": -80.998593,
"longitude": 129.930996,
"tags": [
"excepteur",
"fugiat",
"laborum",
"reprehenderit",
"ea",
"Lorem",
"elit"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Michele Malone"
},
{
"id": 1,
"name": "Bertha Charles"
},
{
"id": 2,
"name": "Cecile Rosales"
}
],
"greeting": "Hello, Dona! You have 10 unread messages.",
"favoriteFruit": "banana"
},
{
"_id": "55232b8a2ce7edb4326a0820",
"index": 20,
"guid": "d6fa62ee-405b-4518-800d-2964e6157115",
"isActive": false,
"balance": "$2,234.26",
"picture": "http://placehold.it/32x32",
"age": 25,
"eyeColor": "green",
"name": {
"first": "Compton",
"last": "Shepherd"
},
"company": "NAXDIS",
"email": "compton.shepherd@naxdis.co.uk",
"phone": "+1 (913) 481-3260",
"address": "575 Montague Street, Leland, Delaware, 7451",
"about": "Dolore consectetur irure cupidatat cupidatat officia fugiat veniam nostrud culpa laborum esse. Aute fugiat nisi Lorem proident culpa exercitation dolore laborum consequat tempor. Culpa adipisicing aute magna duis eiusmod aute nostrud laborum. Est consectetur cillum eu aute amet officia ad duis.\r\n",
"registered": "Tuesday, May 6, 2014 7:22 PM",
"latitude": 88.581478,
"longitude": -108.617342,
"tags": [
"nisi",
"adipisicing",
"incididunt",
"amet",
"exercitation",
"commodo",
"officia"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Janell Dennis"
},
{
"id": 1,
"name": "Dodson Oneill"
},
{
"id": 2,
"name": "Mcmillan Combs"
}
],
"greeting": "Hello, Compton! You have 7 unread messages.",
"favoriteFruit": "banana"
},
{
"_id": "55232b8aee8f1081bd5379af",
"index": 21,
"guid": "4de9ce8a-4462-4cc3-a536-6d4fbc525e0d",
"isActive": true,
"balance": "$1,549.58",
"picture": "http://placehold.it/32x32",
"age": 37,
"eyeColor": "blue",
"name": {
"first": "Jarvis",
"last": "Jackson"
},
"company": "OZEAN",
"email": "jarvis.jackson@ozean.me",
"phone": "+1 (949) 516-2882",
"address": "591 Livingston Street, Williamson, Nevada, 3651",
"about": "Ullamco elit culpa adipisicing nulla duis laboris fugiat laborum non. Occaecat veniam amet ullamco duis id. Pariatur irure dolor adipisicing dolor ea.\r\n",
"registered": "Wednesday, February 19, 2014 1:36 AM",
"latitude": -69.337314,
"longitude": -106.822527,
"tags": [
"est",
"nostrud",
"excepteur",
"aliqua",
"minim",
"aliquip",
"voluptate"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Fernandez Chambers"
},
{
"id": 1,
"name": "Janette Matthews"
},
{
"id": 2,
"name": "Larson Levy"
}
],
"greeting": "Hello, Jarvis! You have 10 unread messages.",
"favoriteFruit": "strawberry"
},
{
"_id": "55232b8a9b654a39edb7c56a",
"index": 22,
"guid": "46bb7660-0e91-43ba-ae33-e5fed99715b5",
"isActive": true,
"balance": "$1,655.02",
"picture": "http://placehold.it/32x32",
"age": 33,
"eyeColor": "blue",
"name": {
"first": "Snow",
"last": "Stokes"
},
"company": "PRIMORDIA",
"email": "snow.stokes@primordia.biz",
"phone": "+1 (987) 478-3955",
"address": "104 Narrows Avenue, Barrelville, Northern Mariana Islands, 6526",
"about": "Esse sit minim cillum incididunt irure. Consequat ex voluptate cillum nostrud fugiat. Cillum adipisicing culpa elit aute in elit nulla commodo. Dolore sint nisi nostrud duis. Elit amet duis ut minim est sit occaecat do id Lorem. Reprehenderit est irure esse fugiat ullamco do dolor id exercitation cillum incididunt nisi ad cillum.\r\n",
"registered": "Tuesday, December 30, 2014 9:02 AM",
"latitude": 6.673517,
"longitude": 153.088888,
"tags": [
"anim",
"dolore",
"nisi",
"fugiat",
"minim",
"nostrud",
"quis"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Lenora Mccarthy"
},
{
"id": 1,
"name": "Tran Hood"
},
{
"id": 2,
"name": "Smith Cox"
}
],
"greeting": "Hello, Snow! You have 9 unread messages.",
"favoriteFruit": "apple"
},
{
"_id": "55232b8af289ca71965ec59b",
"index": 23,
"guid": "9deeb62e-6b85-42cd-93ba-1c642695bf03",
"isActive": true,
"balance": "$1,319.31",
"picture": "http://placehold.it/32x32",
"age": 31,
"eyeColor": "brown",
"name": {
"first": "Miranda",
"last": "Gilliam"
},
"company": "LYRICHORD",
"email": "miranda.gilliam@lyrichord.biz",
"phone": "+1 (893) 508-2030",
"address": "848 Lynch Street, Sutton, Rhode Island, 1787",
"about": "Ad ad magna sunt consequat. Incididunt consectetur reprehenderit magna dolore anim sit deserunt. Duis magna officia nisi consequat est voluptate culpa. Excepteur est ut officia excepteur aute. Eu proident aute in irure sit culpa. Proident ullamco duis enim reprehenderit dolore proident sit tempor pariatur consequat ex sunt.\r\n",
"registered": "Saturday, February 21, 2015 2:30 PM",
"latitude": 45.388761,
"longitude": -51.480885,
"tags": [
"aliqua",
"eu",
"incididunt",
"elit",
"cillum",
"ullamco",
"ut"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Waller Cameron"
},
{
"id": 1,
"name": "Toni Ford"
},
{
"id": 2,
"name": "Richards Jimenez"
}
],
"greeting": "Hello, Miranda! You have 8 unread messages.",
"favoriteFruit": "apple"
},
{
"_id": "55232b8a5a83477d10ad661f",
"index": 24,
"guid": "e750d525-257c-43e8-9292-15f2f82654e5",
"isActive": false,
"balance": "$1,270.29",
"picture": "http://placehold.it/32x32",
"age": 25,
"eyeColor": "green",
"name": {
"first": "Allison",
"last": "Cook"
},
"company": "BITREX",
"email": "allison.cook@bitrex.us",
"phone": "+1 (980) 472-3058",
"address": "102 Pilling Street, Nicut, Arizona, 717",
"about": "Laborum adipisicing laborum eu proident ut in ut occaecat aute commodo nisi qui. Nulla consectetur incididunt sint eu. Officia ad labore ex labore incididunt ullamco pariatur proident amet sit laboris ipsum laborum. Incididunt magna ut ut elit eiusmod sunt eiusmod qui excepteur qui. Quis Lorem cillum aute quis officia culpa commodo consequat aute ipsum excepteur deserunt ut est.\r\n",
"registered": "Sunday, August 31, 2014 2:43 AM",
"latitude": -13.65289,
"longitude": -90.803204,
"tags": [
"velit",
"ex",
"duis",
"ex",
"eu",
"cupidatat",
"occaecat"
],
"range": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
"friends": [
{
"id": 0,
"name": "Kendra Keith"
},
{
"id": 1,
"name": "Sybil Ryan"
},
{
"id": 2,
"name": "Jocelyn Peters"
}
],
"greeting": "Hello, Allison! You have 8 unread messages.",
"favoriteFruit": "apple"
}
]);
// Textual data
var textSmall = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.';
var textMedium = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse id ornare eros. Phasellus ac ligula non enim tincidunt tempus et sit amet augue. Phasellus condimentum porta interdum. Pellentesque in cursus ipsum. Fusce tincidunt sagittis orci non tincidunt. Sed sodales ultricies est id pulvinar. Vivamus blandit dolor eu varius scelerisque. Maecenas lectus ante, aliquam a diam non, efficitur convallis quam. Proin porta nunc sollicitudin vulputate viverra. Vivamus et euismod arcu. Sed in sem efficitur, luctus turpis ac, vestibulum lacus. Sed vel faucibus felis. Nullam at nisl quis ante tincidunt varius. Maecenas lobortis mattis consectetur. Suspendisse vitae cursus turpis. Donec dapibus faucibus aliquet.';
var textLarge = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin bibendum eros non urna blandit elementum. Vestibulum suscipit neque at ullamcorper rutrum. Sed non lorem dui. Ut in lacus tortor. Cras et nibh gravida, porta augue vel, consectetur erat. Suspendisse congue dolor eget leo dictum pulvinar. Proin rutrum porttitor arcu. Praesent tincidunt pulvinar bibendum. Vestibulum ut ipsum posuere, vehicula dolor nec, lobortis dui. Phasellus eget nisl pellentesque, varius purus a, pellentesque massa. Aliquam accumsan, urna et eleifend semper, metus sem lacinia mi, eu varius neque nisl non neque. Nam varius tempus ipsum, nec accumsan lorem mattis eu. Etiam eu dui non purus convallis suscipit non ut diam. Praesent dignissim augue a accumsan malesuada. Sed in nulla blandit, fermentum velit sit amet, aliquet odio. Integer metus elit, scelerisque id eros at, ornare commodo nunc. Etiam quis pretium diam. Vivamus at orci ac augue efficitur mattis at id erat. Vivamus risus erat, dignissim eleifend lacinia sit amet, feugiat quis risus. Donec vel mi eu felis lacinia varius in eget mauris. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut consectetur vel nisi at suscipit. Integer lacinia congue pretium. Aliquam vestibulum, enim sit amet elementum venenatis, nunc risus dignissim diam, sit amet mattis mi quam in purus. Aenean dapibus scelerisque dictum. Praesent vulputate est purus, eget fermentum tellus rutrum vel. Etiam quis diam mollis, euismod massa convallis, tempus augue. Proin congue felis eu arcu bibendum, sit amet mattis nunc aliquet. Nullam mattis nec metus non sollicitudin. Etiam bibendum aliquam justo, laoreet tempor nisl ultricies eu. Suspendisse condimentum elit id ante vulputate, ac suscipit libero mattis. Phasellus tincidunt maximus ligula. Integer rhoncus pretium urna non efficitur. Nulla leo orci, dictum vitae pulvinar non, sollicitudin vel mauris. Sed a quam volutpat, feugiat neque et, porttitor ligula. Etiam volutpat libero non nunc feugiat volutpat. Aliquam mollis varius velit at imperdiet. Duis ornare ipsum at tellus cursus posuere. Nulla urna eros, porttitor quis neque in, hendrerit sagittis dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec vulputate libero sit amet viverra congue. Sed quis malesuada ipsum. Maecenas eu iaculis velit. Duis blandit blandit pulvinar. Aenean ut augue justo. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Pellentesque ornare turpis ut vulputate aliquam. Nunc faucibus sed risus ut facilisis. In laoreet lobortis aliquet. Nullam mattis felis sit amet aliquam euismod. Fusce sodales nisi vel mi sagittis imperdiet. Nulla ut nisi facilisis, vehicula urna sed, ultrices diam. Suspendisse aliquam efficitur vehicula. Integer cursus gravida neque, vel ullamcorper justo molestie sed. Vestibulum tortor nisi, mattis sed magna quis, porta accumsan erat. Donec finibus tortor et nunc vehicula, efficitur pulvinar felis cursus. Sed euismod erat orci, vitae consequat nulla laoreet ac. Maecenas fermentum, libero ut pulvinar aliquam, augue velit sodales nisi, vel eleifend odio nunc quis lacus. Fusce pellentesque egestas pharetra. Pellentesque dictum nec ipsum id tempus. Praesent molestie ullamcorper libero, eget fermentum nulla ultrices in. Mauris consectetur scelerisque dictum. Mauris ultricies venenatis risus vitae facilisis. Aenean vehicula maximus tempus. Curabitur eleifend velit eget odio semper, ornare hendrerit purus placerat. Ut in molestie turpis, eget vulputate tellus. Cras id rhoncus lectus. Suspendisse fringilla nisi eget suscipit cursus. Nam porttitor quam et odio molestie, eget vulputate lacus sodales. Vestibulum a auctor lectus. Integer eros sem, pretium congue lacus non, tempus scelerisque mauris. Pellentesque pharetra in tortor eu sodales. Fusce sit amet velit at libero viverra dapibus. Phasellus pharetra dui a elementum feugiat. Phasellus lobortis rutrum volutpat. Nullam efficitur sagittis dictum. Maecenas nisi nibh, malesuada id pellentesque eu, iaculis in lacus. Praesent feugiat suscipit libero, eget sodales neque venenatis eu. Nulla et accumsan arcu. Suspendisse iaculis hendrerit lectus, vel bibendum nibh sagittis vitae. Curabitur lacus sapien, cursus id dictum id, maximus viverra mi. Nam id porta nisl, mollis auctor magna. Aenean consequat, diam id iaculis commodo, eros nunc cursus odio, sit amet dignissim quam leo interdum libero. Donec dapibus tincidunt velit, mollis sollicitudin justo rutrum sed. Fusce volutpat id velit sit amet pulvinar. Nullam magna sapien, commodo sed pharetra eget, fringilla sit amet nisl. Aliquam varius tristique massa sed gravida. Morbi sit amet urna non ante volutpat cursus. Nunc elit nulla, sodales non quam a, pharetra aliquam diam. Donec eget urna ut enim imperdiet fermentum id at nisl. Phasellus id fringilla elit. Suspendisse porttitor mi risus, vel commodo odio dictum ac. Suspendisse nec ultricies turpis. Curabitur aliquam, felis pellentesque maximus iaculis, sapien risus ultrices leo, ac congue enim quam quis mauris. Quisque et varius odio. Aenean eget convallis elit. Vestibulum pulvinar velit at dictum tristique. Nulla facilisi. Nam eu leo auctor, posuere eros sed, pretium arcu. Phasellus aliquam euismod ligula, ut sagittis ligula pretium vitae. Aliquam venenatis quam vitae accumsan accumsan. Pellentesque eu sapien tempus, pulvinar velit et, molestie erat. Donec id volutpat metus. Cras et sollicitudin augue, sit amet viverra lectus. Curabitur lorem urna, rutrum in nibh vel, placerat varius sem. Mauris aliquet venenatis purus nec dignissim. Morbi orci tellus, congue ac ante faucibus, tincidunt vulputate magna. Sed ac faucibus enim. Nam eget lacus sit amet quam luctus finibus ac nec libero. Donec porta a neque sed tempus. Proin laoreet nisl id lorem accumsan blandit. Vivamus ac laoreet quam, ut consectetur nibh. Cras tempus elementum risus, ut placerat lorem tincidunt quis. Donec eu aliquet nisi. Aenean fermentum et nisi et lacinia. Integer vulputate nisi mauris, vel lobortis velit dignissim quis. Nam enim neque, imperdiet consectetur est sed, consectetur tempus lectus. Praesent a vulputate massa. Fusce eleifend gravida commodo. Duis eu euismod mi. Nulla convallis, elit a tempus vestibulum, tellus nibh egestas ligula, varius euismod magna sapien vel quam. Sed nec hendrerit neque, id semper leo. Pellentesque ut laoreet neque, non fermentum quam. In sit amet urna nec lacus vehicula maximus quis a diam. Suspendisse magna lectus, lobortis ac orci quis, tristique vehicula mi. Nunc elementum posuere consequat. Duis leo metus, semper ac eleifend eget, sodales vitae odio. Nullam quis erat ac quam consequat vehicula vehicula id ex. Phasellus et urna non lorem tempus consectetur. Nullam vestibulum vehicula eros, sit amet efficitur erat euismod aliquam. Nulla varius dolor aliquet ante luctus, nec fermentum ligula facilisis.';
// Run benchmarks
benchmark('RegExp.test JSON small', regxTest, jsonSmall);
benchmark('JSON.parse JSON small', jsonTest, jsonSmall);
console.log('');
benchmark('RegExp.test Text small', regxTest, textSmall);
benchmark('JSON.parse Text small', jsonTest, textSmall);
console.log('');
benchmark('RegExp.test JSON medium', regxTest, jsonMedium);
benchmark('JSON.parse JSON medium', jsonTest, jsonMedium);
console.log('');
benchmark('RegExp.test Text medium', regxTest, textMedium);
benchmark('JSON.parse Text medium', jsonTest, textMedium);
console.log('');
benchmark('RegExp.test JSON large', regxTest, jsonLarge);
benchmark('JSON.parse JSON large', jsonTest, jsonLarge);
console.log('');
benchmark('RegExp.test Text large', regxTest, textLarge);
benchmark('JSON.parse Text large', jsonTest, textLarge);
RegExp.test JSON small: 2ms
JSON.parse JSON small: 2ms
RegExp.test Text small: 0ms
JSON.parse Text small: 10ms
RegExp.test JSON medium: 10ms
JSON.parse JSON medium: 8ms
RegExp.test Text medium: 0ms
JSON.parse Text medium: 10ms
RegExp.test JSON large: 177ms
JSON.parse JSON large: 159ms
RegExp.test Text large: 0ms
JSON.parse Text large: 7ms
@mzabriskie
Copy link
Author

Benchmarking the difference between using a RegExp to validate if a String looks like JSON before parsing, vs wrapping JSON.parse in a try/catch and blindly parsing regardless.

Results are from benchmarking on a MBP using nodejs v0.10.33.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment