{"id":2537,"date":"2020-05-19T17:01:55","date_gmt":"2020-05-19T14:01:55","guid":{"rendered":"https:\/\/flatlogic.com\/blog\/?p=2537"},"modified":"2021-07-30T15:36:59","modified_gmt":"2021-07-30T12:36:59","slug":"17-articles-of-may-to-learn-javascript","status":"publish","type":"post","link":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/","title":{"rendered":"17+ Articles of May to Learn JavaScript"},"content":{"rendered":"<p>Hey JavaScripters! Today we have articles about selection sort, testing with Jest, <a  data-ilj-link-preview=\"true\"  data-featured-image=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2019\/09\/top-articles-copy-600x450.png\"  data-excerpt=\"Here is our list of JS articles of 2019. We collected 17 posts with tricks and tips in JavaScript and its frameworks.\" href=\"https:\/\/flatlogic.com\/blog\/17-articles-of-september-2019-to-learn-javascript\/\">React<\/a> functional components, and many more. Enjoy reading!<\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/dzone.com\/articles\/basic-front-end-dev-environment-setup\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame1_Basic-Frontend-Dev-Environment-Setup.png\" alt=\"\" class=\"wp-image-2541 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame1_Basic-Frontend-Dev-Environment-Setup.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame1_Basic-Frontend-Dev-Environment-Setup-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame1_Basic-Frontend-Dev-Environment-Setup-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Basic Frontend Dev Environment Setup<\/strong><\/h4><p>by @DZoneInc<\/p><p><a href=\"https:\/\/dzone.com\/articles\/basic-front-end-dev-environment-setup\">Read the article<\/a><\/p><p><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large is-style-default\"><a href=\"https:\/\/flatlogic.com\/blog\/top-5-free-awesome-react-js-material-ui-admin-dashboard-templates\/\"><img decoding=\"async\" width=\"1024\" height=\"768\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-43adfuuuuYYYYY-1024x768.png\" alt=\"\" class=\"wp-image-2510 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-43adfuuuuYYYYY-1024x768.png 1024w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-43adfuuuuYYYYY-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-43adfuuuuYYYYY-768x576.png 768w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-43adfuuuuYYYYY-1536x1152.png 1536w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-43adfuuuuYYYYY.png 1600w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/768;\" data-original-sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Top 5 Free Awesome React.js Material-UI Admin Dashboard Templates<\/strong><\/h4><p>by @flatlogic<\/p><p><a href=\"https:\/\/flatlogic.com\/blog\/top-5-free-awesome-react-js-material-ui-admin-dashboard-templates\/\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/stackabuse.com\/selection-sort-in-javascript\/\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Selection-Sort-in-JavaScript.png\" alt=\"\" class=\"wp-image-2539 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Selection-Sort-in-JavaScript.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Selection-Sort-in-JavaScript-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Selection-Sort-in-JavaScript-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Selection Sort in JavaScript<\/strong><\/h4><p>by @StackAbuse<\/p><p><a href=\"https:\/\/stackabuse.com\/selection-sort-in-javascript\/\">Read the article<\/a> <a href=\"https:\/\/flatlogic.com\/generator\"><img decoding=\"async\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2025\/10\/Introducing-professional-vibe-coding.png\" alt=\"Professional Vibe Coding\" class=\"banner-img lazyload\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 2560px; --smush-placeholder-aspect-ratio: 2560\/640;\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2025\/10\/Introducing-professional-vibe-coding.png 2560w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2025\/10\/Introducing-professional-vibe-coding-600x150.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2025\/10\/Introducing-professional-vibe-coding-1024x256.png 1024w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2025\/10\/Introducing-professional-vibe-coding-768x192.png 768w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2025\/10\/Introducing-professional-vibe-coding-1536x384.png 1536w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2025\/10\/Introducing-professional-vibe-coding-2048x512.png 2048w\" data-sizes=\"auto\" data-original-sizes=\"(max-width: 2560px) 100vw, 2560px\"> <\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large is-style-default\"><a href=\"https:\/\/flatlogic.com\/blog\/using-react-with-express\/\"><img decoding=\"async\" width=\"1024\" height=\"768\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-41wefruV-1024x768.png\" alt=\"\" class=\"wp-image-2503 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-41wefruV-1024x768.png 1024w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-41wefruV-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-41wefruV-768x576.png 768w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-41wefruV-1536x1152.png 1536w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-41wefruV.png 1600w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/768;\" data-original-sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Using React with Express<\/strong><\/h4><p>by @flatlogic<\/p><p><a href=\"https:\/\/flatlogic.com\/blog\/using-react-with-express\/\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blog.bitsrc.io\/building-a-react-component-design-system-8b643bb8922b\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Building-a-React-Component-Design-System-1.png\" alt=\"\" class=\"wp-image-2540 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Building-a-React-Component-Design-System-1.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Building-a-React-Component-Design-System-1-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Building-a-React-Component-Design-System-1-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Building a React Component Design System<\/strong><\/h4><p>by @bitdev_<\/p><p><a href=\"https:\/\/blog.bitsrc.io\/building-a-react-component-design-system-8b643bb8922b\">Read the article<\/a><\/p><\/div><\/div><p><\/p><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/stackabuse.com\/using-mocks-for-testing-in-javascript-with-jes\/\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Using-Mocks-for-Testing-in-JavaScript-With-Jest.png\" alt=\"\" class=\"wp-image-2542 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Using-Mocks-for-Testing-in-JavaScript-With-Jest.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Using-Mocks-for-Testing-in-JavaScript-With-Jest-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Using-Mocks-for-Testing-in-JavaScript-With-Jest-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Using Mocks for Testing in JavaScript With Jest<\/strong><\/h4><p>by @AllanMogusu<\/p><p><a href=\"https:\/\/stackabuse.com\/using-mocks-for-testing-in-javascript-with-jes\/\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/css-tricks.com\/react-single-file-components-are-here\/\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_React-Single-File-Components-Are-Here.png\" alt=\"\" class=\"wp-image-2543 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_React-Single-File-Components-Are-Here.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_React-Single-File-Components-Are-Here-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_React-Single-File-Components-Are-Here-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>React Single File Components Are&nbsp;Here<\/strong><\/h4><p>by @css<\/p><p><a href=\"https:\/\/css-tricks.com\/react-single-file-components-are-here\/\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/web.dev\/optimize-cls\/\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Optimize-Cumulative-Layout-Shift.png\" alt=\"\" class=\"wp-image-2544 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Optimize-Cumulative-Layout-Shift.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Optimize-Cumulative-Layout-Shift-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Optimize-Cumulative-Layout-Shift-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Optimize Cumulative Layout Shift<\/strong><\/h4><p>by @addyosmani<\/p><p><a href=\"https:\/\/web.dev\/optimize-cls\/\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blog.logrocket.com\/react-cool-portal-what-it-is-and-how-to-use-it\/\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_React-cool-portal_-What-it-is-and-how-to-use-it-2.png\" alt=\"\" class=\"wp-image-2548 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_React-cool-portal_-What-it-is-and-how-to-use-it-2.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_React-cool-portal_-What-it-is-and-how-to-use-it-2-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_React-cool-portal_-What-it-is-and-how-to-use-it-2-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>React-cool-portal: What it is and how to use it<\/strong><\/h4><p>by @faruqyusuffG<\/p><p><a href=\"https:\/\/blog.logrocket.com\/react-cool-portal-what-it-is-and-how-to-use-it\/\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/css-tricks.com\/dealing-with-stale-props-and-states-in-reacts-functional-components\/\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Dealing-With-Stale-Props-and-States-in-React-s-Functional-Components.png\" alt=\"\" class=\"wp-image-2549 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Dealing-With-Stale-Props-and-States-in-React-s-Functional-Components.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Dealing-With-Stale-Props-and-States-in-React-s-Functional-Components-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Dealing-With-Stale-Props-and-States-in-React-s-Functional-Components-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Dealing With Stale Props and States in React&#8217;s Functional&nbsp;Components<\/strong><\/h4><p>by @pprg1996<\/p><p><a href=\"https:\/\/css-tricks.com\/dealing-with-stale-props-and-states-in-reacts-functional-components\/\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/web.dev\/optimize-lcp\/\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Optimize-Largest-Contentful-Paint-1.png\" alt=\"\" class=\"wp-image-2550 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Optimize-Largest-Contentful-Paint-1.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Optimize-Largest-Contentful-Paint-1-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Optimize-Largest-Contentful-Paint-1-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Optimize Largest Contentful Paint<\/strong><\/h4><p>by @hdjirdeh<\/p><p><a href=\"https:\/\/web.dev\/optimize-lcp\/\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blog.logrocket.com\/understanding-symbols-in-javascript\/\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Understanding-symbols-in-JavaScript.png\" alt=\"\" class=\"wp-image-2551 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Understanding-symbols-in-JavaScript.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Understanding-symbols-in-JavaScript-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Understanding-symbols-in-JavaScript-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Understanding symbols in JavaScript<\/strong><\/h4><p>by @eahefnawy<\/p><p><a href=\"https:\/\/blog.logrocket.com\/understanding-symbols-in-javascript\/\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/aparnajoshi.netlify.app\/object-oriented-programming-with-javascript\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Object-Oriented-programming-with-Javascript-2.png\" alt=\"\" class=\"wp-image-2554 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Object-Oriented-programming-with-Javascript-2.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Object-Oriented-programming-with-Javascript-2-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Object-Oriented-programming-with-Javascript-2-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Object-Oriented programming with Javascript<\/strong><\/h4><p>by @aparna_joshi_<\/p><p><a href=\"https:\/\/aparnajoshi.netlify.app\/object-oriented-programming-with-javascript\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/itnext.io\/build-a-single-page-web-app-javascript-and-the-dom-90c99b08f8a9\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Build-a-Single-Page-Web-app-using-the-DOM-and-JavaScript.png\" alt=\"\" class=\"wp-image-2555 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Build-a-Single-Page-Web-app-using-the-DOM-and-JavaScript.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Build-a-Single-Page-Web-app-using-the-DOM-and-JavaScript-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Build-a-Single-Page-Web-app-using-the-DOM-and-JavaScript-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Build a Single Page Web app using the DOM and JavaScript<\/strong><\/h4><p>by ITNEXT<\/p><p><a href=\"https:\/\/itnext.io\/build-a-single-page-web-app-javascript-and-the-dom-90c99b08f8a9\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/itnext.io\/build-a-single-page-web-app-javascript-and-the-dom-90c99b08f8a9\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Building-your-First-Chrome-Extension-_-IMDb-Lookup.png\" alt=\"\" class=\"wp-image-2556 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Building-your-First-Chrome-Extension-_-IMDb-Lookup.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Building-your-First-Chrome-Extension-_-IMDb-Lookup-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-1_Building-your-First-Chrome-Extension-_-IMDb-Lookup-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>Building your First Chrome Extension : IMDb Lookup<\/strong><\/h4><p>by @arbazsiddiqui_<\/p><p><a href=\"https:\/\/itnext.io\/build-a-single-page-web-app-javascript-and-the-dom-90c99b08f8a9\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large is-style-default\"><a href=\"https:\/\/aparnajoshi.netlify.app\/javascript-events-capture-target-bubble\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-47fua.png\" alt=\"\" class=\"wp-image-2558 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-47fua.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-47fua-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-47fua-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>JavaScript Events: Capture, Target, Bubble<\/strong><\/h4><p>by @aparna_joshi_<\/p><p><a href=\"https:\/\/aparnajoshi.netlify.app\/javascript-events-capture-target-bubble\">Read the article<\/a><\/p><\/div><\/div><p><\/p><div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\"><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-image size-large is-style-default\"><a href=\"https:\/\/foxbits.dev\/article\/four-common-javascript-array-methods-push-pop-shift-and-unshift\/15\"><img decoding=\"async\" width=\"800\" height=\"600\" data-src=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-47fuaf.png\" alt=\"\" class=\"wp-image-2559 lazyload\" data-srcset=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-47fuaf.png 800w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-47fuaf-600x450.png 600w, https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Frame-47fuaf-768x576.png 768w\" data-sizes=\"auto\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/600;\" data-original-sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/figure><\/div><div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-heading\"><strong>The four common Javascript array methods Push, Pop, Shift and Unshift<\/strong><\/h4><p>by FoxBits<\/p><p><a href=\"https:\/\/foxbits.dev\/article\/four-common-javascript-array-methods-push-pop-shift-and-unshift\/15\">Read the article<\/a><\/p><\/div><\/div><h2 class=\"wp-block-heading\">About Flatlogic<\/h2><p>At Flatlogic, we develop <a href=\"https:\/\/flatlogic.com\/templates\">admin dashboard templates<\/a> and <a href=\"https:\/\/flatlogic.com\/templates\/react-native\">React Native templates<\/a>. We are listed among Top 20 <a href='https:\/\/flatlogic.com\/services\/web-development'>Web Development<\/a> companies from Belarus and Lithuania. During the last 6 years, we have successfully completed more than <a href=\"https:\/\/flatlogic.com\/case-studies\">50 big projects<\/a> for small startups and large enterprises. As a team, we always have a deep desire to help our clients.<\/p><h2 class=\"wp-block-heading\">You might also like these articles:<\/h2><ul class=\"wp-block-list\"><li><a href=\"https:\/\/flatlogic.com\/blog\/top-5-free-awesome-react-js-material-ui-admin-dashboard-templates\/\"><\/a><a href=\"https:\/\/flatlogic.com\/blog\/a-review-of-12-low-code-and-no-code-development-platforms\/\">A Review of 12+ Low-Code and No-Code Development Platforms<\/a><\/li><li><a href=\"https:\/\/flatlogic.com\/blog\/top-19-remarkable-javascript-data-table-libraries-and-plugins\/\">Top 19+ Remarkable JavaScript Data Table Libraries and Plugins<\/a><\/li><li><a href=\"https:\/\/flatlogic.com\/blog\/top-18-bootstrap-developer-friendly-templates-for-2020\/\">Top 18 Bootstrap Developer Friendly Templates for 2020<\/a><\/li><\/ul><p><\/p>","protected":false},"excerpt":{"rendered":"<p>Today we have articles about selection sort, testing with Jest, React functional components, and many more.<\/p>\n","protected":false},"author":3,"featured_media":2561,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"flatlogic_tldr":"Curated roundup of 17+ JavaScript and React articles from May.\nTopics span React components, Jest mocks, design systems, and selection sort.\nPerformance highlights include optimizing CLS and LCP via web.dev guides.\nCovers fundamentals like symbols, events, arrays, SPAs, and a Chrome extension tutorial.","flatlogic_facts":[{"text":"Roundup features 17+ articles to learn JavaScript in May.","source":""},{"text":"Flatlogic completed 50+ big projects over the last 6 years.","source":"https:\/\/flatlogic.com\/case-studies"},{"text":"Flatlogic is listed among Top 20 web development companies in Belarus and Lithuania.","source":"https:\/\/flatlogic.com\/services\/web-development"},{"text":"Includes web.dev guide: Optimize Cumulative Layout Shift (CLS).","source":"https:\/\/web.dev\/optimize-cls\/"},{"text":"Includes web.dev guide: Optimize Largest Contentful Paint (LCP).","source":"https:\/\/web.dev\/optimize-lcp\/"}],"footnotes":""},"categories":[1],"tags":[54,35,47,79],"class_list":["post-2537","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news","tag-javascript","tag-reactjs","tag-reviews","tag-web-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.2 (Yoast SEO v26.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>17+ Articles of May to Learn JavaScript - Flatlogic Blog<\/title>\n<meta name=\"description\" content=\"It&#039;s time to enhance your JS skills! Learn JavaScript every month with this fresh batch of web development tips, tricks, and advices.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"17+ Articles of May to Learn JavaScript\" \/>\n<meta property=\"og:description\" content=\"It&#039;s time to enhance your JS skills! Learn JavaScript every month with this fresh batch of web development tips, tricks, and advices.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/\" \/>\n<meta property=\"og:site_name\" content=\"Flatlogic Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/flatlogic\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-19T14:01:55+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-07-30T12:36:59+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Top-JS-Art-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Nastassia Ovchinnikova\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@flatlogic\" \/>\n<meta name=\"twitter:site\" content=\"@flatlogic\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nastassia Ovchinnikova\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"17+ Articles of May to Learn JavaScript - Flatlogic Blog","description":"It's time to enhance your JS skills! Learn JavaScript every month with this fresh batch of web development tips, tricks, and advices.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/","og_locale":"en_US","og_type":"article","og_title":"17+ Articles of May to Learn JavaScript","og_description":"It's time to enhance your JS skills! Learn JavaScript every month with this fresh batch of web development tips, tricks, and advices.","og_url":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/","og_site_name":"Flatlogic Blog","article_publisher":"https:\/\/www.facebook.com\/flatlogic","article_published_time":"2020-05-19T14:01:55+00:00","article_modified_time":"2021-07-30T12:36:59+00:00","og_image":[{"width":800,"height":600,"url":"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Top-JS-Art-1.png","type":"image\/png"}],"author":"Nastassia Ovchinnikova","twitter_card":"summary_large_image","twitter_creator":"@flatlogic","twitter_site":"@flatlogic","twitter_misc":{"Written by":"Nastassia Ovchinnikova","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/#article","isPartOf":{"@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/"},"author":{"name":"Nastassia Ovchinnikova","@id":"https:\/\/flatlogic.com\/blog\/#\/schema\/person\/bed36c984b2f920a7fc450877f425eed"},"headline":"17+ Articles of May to Learn JavaScript","datePublished":"2020-05-19T14:01:55+00:00","dateModified":"2021-07-30T12:36:59+00:00","mainEntityOfPage":{"@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/"},"wordCount":311,"publisher":{"@id":"https:\/\/flatlogic.com\/blog\/#organization"},"image":{"@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/#primaryimage"},"thumbnailUrl":"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Top-JS-Art-1.png","keywords":["Javascript","React","Reviews","Web Development"],"articleSection":["News"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/","url":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/","name":"17+ Articles of May to Learn JavaScript - Flatlogic Blog","isPartOf":{"@id":"https:\/\/flatlogic.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/#primaryimage"},"image":{"@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/#primaryimage"},"thumbnailUrl":"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Top-JS-Art-1.png","datePublished":"2020-05-19T14:01:55+00:00","dateModified":"2021-07-30T12:36:59+00:00","description":"It's time to enhance your JS skills! Learn JavaScript every month with this fresh batch of web development tips, tricks, and advices.","breadcrumb":{"@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/#primaryimage","url":"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Top-JS-Art-1.png","contentUrl":"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2020\/05\/Top-JS-Art-1.png","width":800,"height":600},{"@type":"BreadcrumbList","@id":"https:\/\/flatlogic.com\/blog\/17-articles-of-may-to-learn-javascript\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/flatlogic.com\/blog\/"},{"@type":"ListItem","position":2,"name":"17+ Articles of May to Learn JavaScript"}]},{"@type":"WebSite","@id":"https:\/\/flatlogic.com\/blog\/#website","url":"https:\/\/flatlogic.com\/blog\/","name":"Flatlogic Blog","description":"Vibe-coding, AI Agents, Professional Software Development Services, Case Studies and More","publisher":{"@id":"https:\/\/flatlogic.com\/blog\/#organization"},"alternateName":"Flatlogic Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/flatlogic.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/flatlogic.com\/blog\/#organization","name":"Flatlogic","url":"https:\/\/flatlogic.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/flatlogic.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2025\/10\/62ea6de0b3469aa3d6ebb528-1.png","contentUrl":"https:\/\/flatlogic.com\/blog\/wp-content\/uploads\/2025\/10\/62ea6de0b3469aa3d6ebb528-1.png","width":970,"height":257,"caption":"Flatlogic"},"image":{"@id":"https:\/\/flatlogic.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/flatlogic","https:\/\/x.com\/flatlogic","https:\/\/www.instagram.com\/flatlogiccom\/","https:\/\/www.linkedin.com\/company\/flatlogic\/"]},{"@type":"Person","@id":"https:\/\/flatlogic.com\/blog\/#\/schema\/person\/bed36c984b2f920a7fc450877f425eed","name":"Nastassia Ovchinnikova","url":"https:\/\/flatlogic.com\/blog\/author\/nastassia\/"}]}},"_links":{"self":[{"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/posts\/2537","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/comments?post=2537"}],"version-history":[{"count":3,"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/posts\/2537\/revisions"}],"predecessor-version":[{"id":7340,"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/posts\/2537\/revisions\/7340"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/media\/2561"}],"wp:attachment":[{"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/media?parent=2537"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/categories?post=2537"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/flatlogic.com\/blog\/wp-json\/wp\/v2\/tags?post=2537"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}