{"ScriptPreparationCode":"var products = [\r\n {\r\n name: \u0022Foo\u0022,\r\n id: 1,\r\n color: \u0022red\u0022,\r\n price: {\r\n beforeSale: 14.11,\r\n afterSale: 11.11,\r\n currency: \u0022USD\u0022\r\n }\r\n },\r\n {\r\n name: \u0022Foo2\u0022,\r\n id: 2,\r\n color: \u0022orange\u0022,\r\n price: {\r\n beforeSale: 24.22,\r\n afterSale: 22.22,\r\n currency: \u0022USD\u0022\r\n }\r\n },\r\n {\r\n name: \u0022Foo3\u0022,\r\n id: 3,\r\n color: \u0022yellow\u0022,\r\n price: {\r\n beforeSale: 44.33,\r\n afterSale: 33.33,\r\n currency: \u0022USD\u0022\r\n }\r\n },\r\n {\r\n name: \u0022Foo4\u0022,\r\n id: 4,\r\n color: \u0022brown\u0022,\r\n price: {\r\n beforeSale: 54.44,\r\n afterSale: 44.44,\r\n currency: \u0022USD\u0022\r\n }\r\n },\r\n {\r\n name: \u0022Bar\u0022,\r\n id: 5,\r\n color: \u0022green\u0022,\r\n price: {\r\n beforeSale: 64.55,\r\n afterSale: 55.55,\r\n currency: \u0022USD\u0022\r\n }\r\n },\r\n {\r\n name: \u0022Bar2\u0022,\r\n id: 6,\r\n color: \u0022purple\u0022,\r\n price: {\r\n beforeSale: 74.66,\r\n afterSale: 66.66,\r\n currency: \u0022USD\u0022\r\n }\r\n },\r\n {\r\n name: \u0022Bar3\u0022,\r\n id: 7,\r\n color: \u0022pink\u0022,\r\n price: {\r\n beforeSale: 84.77,\r\n afterSale: 77.77,\r\n currency: \u0022USD\u0022\r\n }\r\n },\r\n {\r\n name: \u0022Bar4\u0022,\r\n id: 8,\r\n color: \u0022grey\u0022,\r\n price: {\r\n beforeSale: 94.88,\r\n afterSale: 88.88,\r\n currency: \u0022USD\u0022\r\n }\r\n },\r\n {\r\n name: \u0022Baz\u0022,\r\n id: 9,\r\n color: \u0022blue\u0022,\r\n price: {\r\n beforeSale: 104.99,\r\n afterSale: 99.99,\r\n currency: \u0022USD\u0022\r\n }\r\n }\r\n];\r\n\r\n\r\n// Lodash\u0027s find()\r\nfunction testFind(name) {\r\n return _.find(products, function (product) {\r\n return product.name === name;\r\n });\r\n}\r\n\r\n// Early-escape for loop\r\nfunction testFor(name) {\r\n var i;\r\n \r\n for (i = 0; i \u003C products.length; i\u002B\u002B) {\r\n if (products[i].name === name) {\r\n return products[i];\r\n }\r\n }\r\n}\r\n\r\n// Early escape while loop\r\nfunction testWhile(name) {\r\n var i = 0;\r\n \r\n while(i \u003C products.length) {\r\n if (products[i].name === name) {\r\n return products[i];\r\n }\r\n \r\n i\u002B\u002B;\r\n }\r\n}\r\n","TestCases":[{"Name":"Lodash find(): Result at first index","Code":"testFind(\u0022Foo\u0022);","IsDeferred":false},{"Name":"Lodash find(): Result at middle index","Code":"testFind(\u0022Bar\u0022);","IsDeferred":false},{"Name":"Lodash find(): Result at last index","Code":"testFind(\u0022Baz\u0022);","IsDeferred":false},{"Name":"Lodash find(): No result","Code":"testFind(\u0022Quux\u0022);","IsDeferred":false},{"Name":"For loop: Result at first index","Code":"testFor(\u0022Foo\u0022);","IsDeferred":false},{"Name":"For loop: Result at middle index","Code":"testFor(\u0022Bar\u0022);","IsDeferred":false},{"Name":"For loop: Result at last index","Code":"testFor(\u0022Baz\u0022);","IsDeferred":false},{"Name":"For loop: No result","Code":"testFor(\u0022Quux\u0022);","IsDeferred":false},{"Name":"While loop: Result at first index","Code":"testWhile(\u0022Foo\u0022);","IsDeferred":false},{"Name":"While loop: Result at middle index","Code":"testWhile(\u0022Bar\u0022);","IsDeferred":false},{"Name":"While loop: Result at last index","Code":"testWhile(\u0022Baz\u0022);","IsDeferred":false},{"Name":"While loop: No Result","Code":"testWhile(\u0022Quux\u0022);","IsDeferred":false}]}