{"id":709,"date":"2011-08-19T15:50:10","date_gmt":"2011-08-19T13:50:10","guid":{"rendered":"http:\/\/blog.kodono.info\/wordpress\/?p=709"},"modified":"2011-08-19T15:50:10","modified_gmt":"2011-08-19T13:50:10","slug":"tester-les-performances-dun-code-javascript-via-un-benchmark-performance","status":"publish","type":"post","link":"https:\/\/blog.kodono.info\/wordpress\/2011\/08\/19\/tester-les-performances-dun-code-javascript-via-un-benchmark-performance\/","title":{"rendered":"Tester les performances d&#8217;un code Javascript via un benchmark [performance]"},"content":{"rendered":"<p>Je vous conseille de tester r\u00e9guli\u00e8rement votre code Javascript pour voir les performances par rapport \u00e0 d&#8217;autres commandes. Il arrive qu&#8217;on h\u00e9site entre deux (ou plus!) fa\u00e7ons de faire.<\/p>\n<p>Il existe le populaire <a href=\"http:\/\/jsperf.com\/\">http:\/\/jsperf.com\/<\/a> qui offre la possibilit\u00e9 de tester autant de bouts de code que l&#8217;on souhaite, en appelant m\u00eame quelques framework bien connus (comme jQuery).<\/p>\n<p>Mais si vous avez des besoins un peu plus particulier, ou vous devez travailler sur un environnement restreint, alors il est possible d&#8217;utiliser <a href=\"http:\/\/www.broofa.com\/Tools\/JSLitmus\/\">JSLitmus<\/a>. La fa\u00e7on de l&#8217;utiliser est <strong>incroyablement simple<\/strong> :<\/p>\n<pre class=\"brush:javascript\">&lt;script src=\"JSLitmus.js\">&lt;\/script>\r\n&lt;script>\r\nJSLitmus.test('Mon premier test', function() { \/* do something *\/ });\r\nJSLitmus.test('Mon second test', function() { \/* do something else *\/ });\r\n&lt;\/script><\/pre>\n<p>Cela fait appara\u00eetre un bouton &#8220;Run tests&#8221; avec un petit tableau. Une fois le test fini le tableau et un graphique vous donnent les informations n\u00e9cessaires, et en l&#8217;occurrence plus le chiffre (nombre d&#8217;op\u00e9rations\/sec) est grand et mieux c&#8217;est.<\/p>\n<p>Voici un exemple qui montre que l&#8217;utilisation de <code>search<\/code> est bien plus rapide que de d\u00e9clarer une <code>RegExp<\/code> puis appeler <code>match<\/code> :<\/p>\n<pre class=\"brush:javascript\">&lt;html>\r\n&lt;head>\r\n&lt;script src=\"http:\/\/www.broofa.com\/Tools\/JSLitmus\/JSLitmus.js\">&lt;\/script>\r\n&lt;\/head>\r\n&lt;body>\r\n&lt;script>\r\nJSLitmus.test('Mon premier test', function() { var regExp = new RegExp(\"pouet$\"); var ok = (\"pouet\".match(regExp) != null); });\r\nJSLitmus.test('Mon deuxi\u00e8me test', function() { var ok = (\"pouet\".search(\"pouet\") != -1); });\r\n&lt;\/script>\r\n&lt;\/body>&lt;\/html><\/pre>\n<p>R\u00e9sultat :<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.kodono.info\/wordpress\/wp-content\/uploads\/2011\/08\/JSLitmus-238x300.png\" alt=\"\" title=\"JSLitmus\" width=\"238\" height=\"300\" class=\"aligncenter size-medium wp-image-710\" srcset=\"https:\/\/blog.kodono.info\/wordpress\/wp-content\/uploads\/2011\/08\/JSLitmus-238x300.png 238w, https:\/\/blog.kodono.info\/wordpress\/wp-content\/uploads\/2011\/08\/JSLitmus.png 278w\" sizes=\"auto, (max-width: 238px) 100vw, 238px\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Je vous conseille de tester r\u00e9guli\u00e8rement votre code Javascript pour voir les performances par rapport \u00e0 d&#8217;autres commandes. Il arrive qu&#8217;on h\u00e9site entre deux (ou plus!) fa\u00e7ons de faire. Il existe le populaire http:\/\/jsperf.com\/ qui offre la possibilit\u00e9 de tester autant de bouts de code que l&#8217;on souhaite, en appelant m\u00eame quelques framework bien connus [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","hide_page_title":"","footnotes":""},"categories":[13,81,33],"tags":[24,164,158],"class_list":["post-709","post","type-post","status-publish","format-standard","hentry","category-niveau-intermediaire","category-performance","category-programmation","tag-javascript","tag-performance","tag-programmation"],"_links":{"self":[{"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/posts\/709","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/comments?post=709"}],"version-history":[{"count":5,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/posts\/709\/revisions"}],"predecessor-version":[{"id":715,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/posts\/709\/revisions\/715"}],"wp:attachment":[{"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/media?parent=709"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/categories?post=709"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/tags?post=709"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}