<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Lorenzo</title>
    <description>The latest articles on DEV Community by Lorenzo (@lorenzoblog).</description>
    <link>https://dev.to/lorenzoblog</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png</url>
      <title>DEV Community: Lorenzo</title>
      <link>https://dev.to/lorenzoblog</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lorenzoblog"/>
    <language>en</language>
    <item>
      <title>Tools to Speed Up - Super Powers For Devs 🦸</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Tue, 18 May 2021 12:45:24 +0000</pubDate>
      <link>https://dev.to/worldindev/tools-to-speed-up-super-powers-for-devs-16ih</link>
      <guid>https://dev.to/worldindev/tools-to-speed-up-super-powers-for-devs-16ih</guid>
      <description>&lt;p&gt;&lt;code&gt;Hello World!&lt;/code&gt; We all know that developers love going faster, saving time for the real fun, so Today I have for you a compilation of cool and useful tools to save you time as a developer 😉. I don't want to steal too much time from you for useless things, so this list will boil down to the essentials. Name, the superpower it gives you, what it does and a  presentational video. Let's go!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgw5na2wckqqojeeavvr7.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgw5na2wckqqojeeavvr7.gif" alt="giphy (7)" width="480" height="270"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;p&gt;&lt;em&gt;Hey, do you want a free javascript cheat sheet and resource compilation? Grab that &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://camo.githubusercontent.com/6cdd2915fd088df0735bc29e8d3d4e72aba5dc75e3bcca4ea97c89d6d15f6299/68747470733a2f2f6465762d746f2d75706c6f6164732e73332e616d617a6f6e6177732e636f6d2f75706c6f6164732f61727469636c65732f3461736839363233317a7a677031623236696a772e676966" class="article-body-image-wrapper"&gt;&lt;img src="https://camo.githubusercontent.com/6cdd2915fd088df0735bc29e8d3d4e72aba5dc75e3bcca4ea97c89d6d15f6299/68747470733a2f2f6465762d746f2d75706c6f6164732e73332e616d617a6f6e6177732e636f6d2f75706c6f6164732f61727469636c65732f3461736839363233317a7a677031623236696a772e676966" alt="separation bar" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;--&amp;gt; Full version of the article &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://www.quod.ai/" rel="noopener noreferrer"&gt;Quod Ai&lt;/a&gt; - Super Speed
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Smarter search for Git repositories&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foc4wpxryvi8j4bg9q9pf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foc4wpxryvi8j4bg9q9pf.png" alt="image" width="258" height="62"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Auto-search code, experts &amp;amp; impact in your repositories from Github/JIRA issues. Setup in 1-click. Powered by AI.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/U5Tf60GVH9k"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;--&amp;gt; Personally Recommended&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://www.codegrepper.com/app/profile.php?id=182534" rel="noopener noreferrer"&gt;Grepper&lt;/a&gt; - Flight
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;The Query &amp;amp; Answer System for the Ambitious Developer&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Develop faster, master your code, understand more, grow in your career. Accrue code answers to common coding problems, find code answers without thinking - using Greppers “code problem” search engine.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/Q63qjIXMqwU"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://stackoverflow.com/" rel="noopener noreferrer"&gt;Stack Overflow&lt;/a&gt; - Know everything 😉
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Helping developers and technologists write the script of the future&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;No Description needed, I hope. &lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;h2&gt;
  
  
  &lt;a href="https://www.tabnine.com/" rel="noopener noreferrer"&gt;Tabnine&lt;/a&gt; - Supersenses
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Code faster with AI completions&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Tabnine is the world’s leading AI code completion tool, trusted by over 1 million developers in all programming languages.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/twPtvZuBrAg"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://www.notion.so/product" rel="noopener noreferrer"&gt;Notion&lt;/a&gt; - Mind-control
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;All-in-one workspace&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;One tool for your whole team. Write, plan, and get organized. Notion helps students, teams, enterprises, and startups grow.  &lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/oTahLEX3NXo"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://slack.com/intl/en-it/" rel="noopener noreferrer"&gt;Slack&lt;/a&gt;  - Mind-to-mind communication
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Slack makes it downright pleasant to work together&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Slack is the collaboration hub that brings the right people, information, and tools together to get work done. From Fortune 100 companies to corner markets, millions of people around the world use Slack to connect their teams, unify their systems, and drive their business forward.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/vXC3kHb_YEI"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://discord.gg/7sRmnhCs6H" rel="noopener noreferrer"&gt;Discord&lt;/a&gt; - Mind-to-mind communication for gamers
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Create an invite-only place where you belong&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Imagine a place where you can belong to a school club, a gaming group, or a worldwide art community. Where just you and handful of friends can spend time together. A place that makes it easy to talk every day and hang out more often.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/TJ13BA3-NR4"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="//stackoverflow.com/teams"&gt;Stack Overflow For Teams&lt;/a&gt; - Telepathy
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Knowledge sharing and collaboration without distractions&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Stack Overflow for Teams is a knowledge management &amp;amp; collaboration solution that technologists already trust.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/HJtJXMKpl2g"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://trello.com/en" rel="noopener noreferrer"&gt;Trello&lt;/a&gt; - Ability to locate things mentally
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Trello helps teams move work forward&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Collaborate, manage projects, and reach new productivity peaks. From high rises to the home office, the way your team works is unique—accomplish it all with Trello.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/AyfupeWS0yY"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://trello.com/en" rel="noopener noreferrer"&gt;Miro&lt;/a&gt; - Illusions
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Where teams get work done&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The online collaborative whiteboard platform to&lt;br&gt;
bring teams together, anytime, anywhere.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/E4PiBUVHlLo"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://www.figma.com/" rel="noopener noreferrer"&gt;Figma&lt;/a&gt; - Advanced Illusions
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Minds meeting minds is how great ideas meet the world&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Figma brings your teams together to design better products from start to finish. &lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/AyfupeWS0yY"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://carbon.now.sh/" rel="noopener noreferrer"&gt;Carbon&lt;/a&gt; - Elasticity
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Create and share beautiful images of your source code&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;You know all of those code screenshots you see on Twitter? Although the code's usually impressive, we thought there was room for improvement in the aesthetic department. So what are you waiting for? Go try it out and impress all your developer and designer friends. 🎨&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/LmZGQr-nbbU"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://unsplash.com/" rel="noopener noreferrer"&gt;Unsplash&lt;/a&gt; - Energy Manipulation
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;The internet’s source of freely-usable images. Powered by creators everywhere.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Over 2 million free high-resolution images brought to you by the world’s most generous community of photographers. Unsplash is internet’s source of freely usable images.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9dmf3wo7vfufh11pfuqy.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9dmf3wo7vfufh11pfuqy.jpg" alt="mathias-p-r-reding-QdqK4doOzcQ-unsplash" width="640" height="360"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://codepen.io/DevLorenzo" rel="noopener noreferrer"&gt;Codepen&lt;/a&gt; - Self-liquification
&lt;/h2&gt;

&lt;p&gt;👋 CodePen is a social development environment. At its heart, it allows you to write code in the browser, and see the results of it as you build. A useful and liberating online code editor for developers of any skill, and particularly empowering for people learning to code. We focus primarily on front-end languages like HTML, CSS, JavaScript, and preprocessing syntaxes that turn into those things.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/vb9uYBtqmeM"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://replit.com/~" rel="noopener noreferrer"&gt;Repl&lt;/a&gt; - Self-duplication
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Code, create, and learn together&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Use our free, collaborative, in-browser IDE to code in 50+ languages — without spending a second on setup.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/LYYX9zP3Jp8"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://devhints.io/" rel="noopener noreferrer"&gt;Dev Hints&lt;/a&gt; - Intangibility
&lt;/h2&gt;

&lt;p&gt;Hey! I'm &lt;a class="mentioned-user" href="https://dev.to/rstacruz"&gt;@rstacruz&lt;/a&gt; and this is a modest collection of cheatsheets I've written.&lt;/p&gt;

&lt;p&gt;My note - Don't trust the tagline, the collection is awesome&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdr86su9a572v9zao01gd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdr86su9a572v9zao01gd.png" alt="image" width="800" height="599"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://devdocs.io/" rel="noopener noreferrer"&gt;Dev Docs&lt;/a&gt; - Absorbing someone else’s powers
&lt;/h2&gt;

&lt;p&gt;DevDocs combines multiple developer documentations in a clean and organized web UI with instant search, offline support, mobile version, dark theme, keyboard shortcuts, and more.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu1549lkz5r680u4ev3px.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu1549lkz5r680u4ev3px.png" alt="image" width="800" height="231"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://jsonformatter.org/" rel="noopener noreferrer"&gt;JSON formatter&lt;/a&gt; - Density control
&lt;/h2&gt;

&lt;p&gt;JSON Formatter and JSON Validator help to format and validate your JSON text. It also provides a tree view that helps to navigate your formatted JSON data.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0b088zak79jowpc9dhqi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0b088zak79jowpc9dhqi.png" alt="image" width="800" height="151"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://caniuse.com/" rel="noopener noreferrer"&gt;Can I use&lt;/a&gt; - Telekinesis
&lt;/h2&gt;

&lt;p&gt;"Can I use" provides up-to-date browser support tables for support of front-end web technologies on desktop and mobile web browsers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdv35tugv7gcc3l0c2y4t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdv35tugv7gcc3l0c2y4t.png" alt="image" width="800" height="255"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://www.gradientmagic.com/" rel="noopener noreferrer"&gt;Gradient Magic&lt;/a&gt; - Magnetic forces
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;A Free Gallery of Fantastic and Unique CSS Gradients&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;Gradient Magic is the largest gallery of CSS Gradients on the web, with new and exciting gradients added all the time.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffu2imb6qb106d4px3g8t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffu2imb6qb106d4px3g8t.png" alt="image" width="800" height="440"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Bonuses:
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Mobile Apps
&lt;/h3&gt;

&lt;p&gt;1 - Programming Hub&lt;br&gt;
2 - SoloLearn&lt;br&gt;
3 - Mimo&lt;br&gt;
4 - Programiz&lt;br&gt;
5 - Enki&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  Top Google Chrome Extensions For Devs
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/quod-ai-automatic-code-se/meglmkkpdmcimaaknnmllpbnnclnnipn" rel="noopener noreferrer"&gt;Quod Ai&lt;/a&gt; → Automatically show source code search suggestions and context from Github or JIRA issues for productive software development &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Shortcuts for google → Open google apps with a click&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;3 - Video Speed Controller → Allow you to control the speed of a video with shortcuts and to overcome the 2x speed&lt;/p&gt;

&lt;p&gt;4 - Code Line Daily → every day a line of code in your browser (HTML, CSS, and Javascript)&lt;/p&gt;

&lt;p&gt;5 - Volume Manager → Manage the volume of a tab&lt;/p&gt;

&lt;p&gt;6 - VisBug → Open source web design debug tools built with JavaScript: "a FireBug for designers".&lt;/p&gt;

&lt;p&gt;7 - Better-OneTab → Allow you to manage and save your tabs&lt;/p&gt;

&lt;p&gt;8 - Grammarly for chrome → Correct my English 😀&lt;/p&gt;

&lt;p&gt;9 - Color Zilla → Pick up a color from any web page and copy the hex&lt;/p&gt;

&lt;p&gt;Or:&lt;/p&gt;

&lt;p&gt;9 - Quick color picker&lt;/p&gt;

&lt;p&gt;10 - What Font → Check the font of any web page.&lt;/p&gt;

&lt;p&gt;11 - Dimension → Check the dimensions (in pixels) of elements / their distance&lt;/p&gt;

&lt;p&gt;12 - Lorem Ipsum Generator → Generate lorem ipsum test quickly&lt;/p&gt;

&lt;p&gt;13 - CSS viewer → CSS property viewer&lt;/p&gt;

&lt;p&gt;14 - Window Resizer → Allow you to resize the web page (for responsive webpages)&lt;br&gt;
Web Developer → Adds a toolbar button with various web developer tools.&lt;/p&gt;

&lt;p&gt;15 - Vinium → The Hacker's Browser. Vimium provides keyboard shortcuts for navigation and control in the spirit of Vim.&lt;/p&gt;

&lt;p&gt;16 - You can also install an Ad Blocker like AdBlock or AdGuard&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/top-google-chrome-extensions-for-devs-2mkf" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Top Google Chrome Extensions For Devs 🔥🚀&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Mar 7 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#showdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#career&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  Terminal Commands
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;Clear&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;type&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;clear&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;ctrl&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nf"&gt;l &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;windows&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Linux&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;Command&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nc"&gt;K &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;Mac&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;help&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;show&lt;/span&gt; &lt;span class="nx"&gt;all&lt;/span&gt; &lt;span class="nx"&gt;comands&lt;/span&gt;
&lt;span class="nx"&gt;help&lt;/span&gt; &lt;span class="nx"&gt;commandName&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;help&lt;/span&gt; &lt;span class="nx"&gt;about&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;specific&lt;/span&gt; &lt;span class="nx"&gt;command&lt;/span&gt;
&lt;span class="nx"&gt;ctrl&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nx"&gt;D&lt;/span&gt; &lt;span class="nx"&gt;or&lt;/span&gt; &lt;span class="nx"&gt;ctrl&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nx"&gt;C&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;exit&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frw9tupgasp2ytyauymc4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frw9tupgasp2ytyauymc4.png" alt="image" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/the-most-useful-terminal-commands-how-to-work-with-directories-51l8" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Terminal Cheat Sheet 🔥 - The most useful terminal commands 🚀&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Mar 13 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#bash&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;h3&gt;
  
  
  Resource list to learn Math
&lt;/h3&gt;

&lt;p&gt;1 - Khan academy&lt;br&gt;
2 - The EDx Math courses&lt;br&gt;
3 - IXL Math Courses&lt;br&gt;
4 - I practice Math&lt;br&gt;
5 - School Yourself&lt;br&gt;
6 - Essentials of Linear Algebra - Youtube&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/finally-how-to-understand-math-awesome-resource-list-4end" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Finally - How to understand math - Awesome resource list 🚀&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Mar 30 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#beginners&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;





&lt;p&gt;Thanks for reading, hope you as fast as he is now:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxd0h88tp7wlethunm1zi.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxd0h88tp7wlethunm1zi.gif" alt="giphy (8)" width="480" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Remember the ❤️ if you appreciated or even better..&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;Subscribe to our Newsletter!&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;The full PDF version of my articles!&lt;br&gt;
Curated Weekly digeeeeeest every Tuesday&lt;br&gt;
4 JS Cheat Sheets for free, received in no time&lt;br&gt;
Gifts, lots of 🎁. We send cheat sheets, coding advice, productivity tips, and many more!&lt;/p&gt;

&lt;p&gt;--&amp;gt; Already more than 1200 subscribers!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://camo.githubusercontent.com/6cdd2915fd088df0735bc29e8d3d4e72aba5dc75e3bcca4ea97c89d6d15f6299/68747470733a2f2f6465762d746f2d75706c6f6164732e73332e616d617a6f6e6177732e636f6d2f75706c6f6164732f61727469636c65732f3461736839363233317a7a677031623236696a772e676966" class="article-body-image-wrapper"&gt;&lt;img src="https://camo.githubusercontent.com/6cdd2915fd088df0735bc29e8d3d4e72aba5dc75e3bcca4ea97c89d6d15f6299/68747470733a2f2f6465762d746f2d75706c6f6164732e73332e616d617a6f6e6177732e636f6d2f75706c6f6164732f61727469636c65732f3461736839363233317a7a677031623236696a772e676966" alt="separation bar" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>javascript</category>
      <category>beginners</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Do You Stack Overflow?</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Fri, 14 May 2021 07:45:48 +0000</pubDate>
      <link>https://dev.to/lorenzoblog/do-you-stack-overflow-47bp</link>
      <guid>https://dev.to/lorenzoblog/do-you-stack-overflow-47bp</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdf26g8ndi7dd4xvpjl07.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdf26g8ndi7dd4xvpjl07.png" alt="image" width="640" height="715"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quick survey:&lt;/strong&gt; You use Stack Overflow...&lt;/p&gt;

&lt;p&gt;❤: Always - In all my projects&lt;br&gt;
🦄: Often - When I have a bug / difficulty&lt;br&gt;
🏷: Never - I'm smarter &lt;/p&gt;




&lt;p&gt;&lt;code&gt;Hello World!&lt;/code&gt; We are back with the &lt;a href="https://dev.to/devlorenzo/series/11376"&gt;#healthydebate&lt;/a&gt; series! It's time to get serious because today we're talking about Stack Overflow. It's very present in the developer's imagination, but in reality, how much do we use it? Let's discover together!&lt;/p&gt;

&lt;p&gt;Also, by telling your experience, you have a chance to get featured in our &lt;a href="https://worldindev.ck.page" rel="noopener noreferrer"&gt;newsletter&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The question of the week is:&lt;/strong&gt; &lt;em&gt;How much do you use StackOverflow in your developer life?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgatg6v71cx8g72vysdh6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgatg6v71cx8g72vysdh6.png" alt="image" width="223" height="226"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Question time:&lt;/strong&gt; &amp;lt;-- To help you answer the big question above&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;When did you first meet / use StackOverflow? How did you feel?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How much do you use Stack Overflow on your daily basis? &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How do you usually treat the answers, do you directly copy the code / just read and change yours / make a mix...&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How is Stack Overflow considered among your colleagues? What do you think of those who search for too much code there?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzvcgwphyfims83r581ld.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzvcgwphyfims83r581ld.png" alt="image" width="500" height="608"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Use the comment section to reply!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faqefvymp8s1dxngaeseu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faqefvymp8s1dxngaeseu.png" alt="image" width="542" height="260"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;You can receive the weekly discussion recap &lt;a href="https://worldindev.ck.page" rel="noopener noreferrer"&gt;directly in your email&lt;/a&gt; for free!&lt;/p&gt;




&lt;p&gt;Bonus: How to handle any exception&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcyswfd569og2nargvi6c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcyswfd569og2nargvi6c.png" alt="image" width="800" height="395"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;br&gt;
  Images Source:&lt;br&gt;
  &lt;ol&gt;

&lt;li&gt;&lt;a href="https://www.reddit.com/r/ProgrammerHumor/comments/avuwdu/i_dont_use_stackoverflow_either/" rel="noopener noreferrer"&gt;Reddit&lt;/a&gt;&lt;/li&gt;

&lt;li&gt;&lt;a href="https://ahseeit.com/?qa=56049/i-heard-he-can-code-without-stack-overflow-meme" rel="noopener noreferrer"&gt;ahseeit&lt;/a&gt;&lt;/li&gt;

&lt;li&gt;&lt;a href="https://me.me/i/google-stackoverflow-you-tube-bugs-errors-developer-data-flair-39cb521a9b894da09fb42f80613f9362" rel="noopener noreferrer"&gt;me.me&lt;/a&gt;&lt;/li&gt;

&lt;li&gt;

&lt;a href="https://github.com/gautamkrishnar/tcso" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;
&lt;/li&gt;

&lt;/ol&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/p&gt;

</description>
      <category>healthydebate</category>
      <category>productivity</category>
      <category>javascript</category>
      <category>discuss</category>
    </item>
    <item>
      <title>50 Best Inspiring Form Designs 🎨</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Fri, 07 May 2021 13:36:09 +0000</pubDate>
      <link>https://dev.to/lorenzoblog/50-best-inspiring-form-designs-36k</link>
      <guid>https://dev.to/lorenzoblog/50-best-inspiring-form-designs-36k</guid>
      <description>&lt;p&gt;&lt;code&gt;Hello World!&lt;/code&gt; Today we are talking about Forms! They're everywhere, and when you least expect it, they can have a huge impact on your conversion rate. Even if you thrive a lot of traffic on your sites, you'll need to convert this traffic into users. I managed to bring the conversion rate (views divided by conversion) of my landing page to 60%. To make you understand, the average landing page conversion rate across all industries is 2.35%. So, let's start. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu22dpvetxme0guyolrd9.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu22dpvetxme0guyolrd9.gif" alt="simpsone" width="400" height="301"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Read also:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  First, what makes a good Form?
&lt;/h2&gt;

&lt;p&gt;
  Spoiler
  &lt;br&gt;
Its design.&lt;br&gt;
And its backend 😉, for that you should know &lt;a href="https://getform.io/" rel="noopener noreferrer"&gt;Getform&lt;/a&gt;.&lt;br&gt;


&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Fundamentals
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwk4y0m0v0p11zyiswce2.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwk4y0m0v0p11zyiswce2.jpg" alt="mark-duffel-U5y077qrMdI-unsplash" width="640" height="457"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;All forms need to have some core elements that you cannot remove. I advise you to create two forms, a general one to put on your site, which must be minimalist. This one serves especially when asking the user to sign in for something (account, newsletter...). Then you should also make a landing page for those who want to perform that action. An in-website form finds the user unprepared, you have to be direct, he didn't ask for that action, you have to make him want to do it. Use banners or a small section of the page with really just the core input boxes. At most you add more after the user has entered these (on another page, after the redirect). &lt;br&gt;
On the contrary, on a page dedicated 100% to the form, you can be more free and creative! The goal changes, you no longer have to convince the user to stay, but not to leave. On this page add all the useful elements, the main ones are illustrations, testimonials, freebie, an about us section, a timer, social links... &lt;br&gt;
For the illustrations, if you can't, even if it is recommended to make them by yourself, you have lots of free resources online. Some examples are &lt;a href="https://stock.adobe.com/illustrations" rel="noopener noreferrer"&gt;Adobe Stock&lt;/a&gt;, &lt;a href="https://undraw.co/illustrations" rel="noopener noreferrer"&gt;unDraw&lt;/a&gt;, &lt;a href="https://iradesign.io/" rel="noopener noreferrer"&gt;IRA Design&lt;/a&gt;, &lt;a href="https://www.drawkit.io/#browse-now-button" rel="noopener noreferrer"&gt;DrawKit&lt;/a&gt;, &lt;a href="https://absurd.design/" rel="noopener noreferrer"&gt;Absurd Illustrations&lt;/a&gt; or &lt;a href="https://gallery.manypixels.co/" rel="noopener noreferrer"&gt;ManyPixels&lt;/a&gt;. Also, use the out-of-frame (for illustrations for example) to kind of bring the web page out of the screen.&lt;br&gt;
Another important tip that not everyone thinks about is to thank the user in the end. Many think that when the user has signed up the work is finished, but no! it's the other way around, when the user signs up your journey together has just begun.&lt;/p&gt;


&lt;h3&gt;
  
  
  2. Simplicity - Intuitivity
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw4c64z9hi9suyks6yczx.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw4c64z9hi9suyks6yczx.jpg" alt="shane-4993XnXQKHY-unsplash (2)" width="640" height="427"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;The first very important thing, on which too many campaigns fail, is SIMPLICITY. It may seem easy, but you always have to remember that users have no time. You have hundreds of competitors out there that want their forms to work too. Your users can't spend 15 minutes finding the place to put the email and another 15 for the password. You have to be immediate. To have a clear, big and central CTA! &lt;br&gt;
Not more input that strictly necessary. In reality, you should always remember that, like with many things in life, too many is bad, as it's not enough (too little). Too many colors and your form looks like a rainbow, too few and the user thinks to be in a black and white film. Too much content and the user literally no longer understands anything, too little and the form becomes anonymous. It's up to you to find the right balance.&lt;br&gt;
Your form must be intuitive, the user must immediately understand what to put and where. Don't modify too much your field labels. &lt;br&gt;
Give the user what they expect to receive. Don't lie to attract traffic, you will lose credibility and fail in the long run.&lt;/p&gt;


&lt;h3&gt;
  
  
  3. Organization - Respect of the brand guidelines
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fugxgil8aygk8zxtwr124.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fugxgil8aygk8zxtwr124.jpg" alt="stil-Mv4sg6_6qmE-unsplash" width="640" height="960"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;This is another very important thing you need to care about, you need to have a clear organization. Just respect that Brand guideline! First, make sure your logo is on the page and given we are not Nike (your logo is not as recognizable and famous), add your name next to it. Then, especially for landing pages, you should have a big and clear title at the top. You can then switch between text, medium and small titles, images, and special copy (jokes, quotes, links..). The key here is consistency, the same piece of information should be the same way on all your pages. For example, all your medium titles should have the same size, same color, same positioning... &lt;br&gt;
Remember to respect the rules of your brand, such as the main colors up to the organization of the page.&lt;br&gt;
Also, remember to always add your other important links (socials), but never abuse them in a form, they make users flee. A subscriber on the site is more important than a like on a social network.&lt;/p&gt;


&lt;h3&gt;
  
  
  4. Animations
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwhtbs3mn4w12p47vfiw.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwhtbs3mn4w12p47vfiw.jpg" alt="mateusz-butkiewicz-A8uYvRvexvs-unsplash" width="640" height="800"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;I decided to dedicate a whole section to animations, they deserve that. Your page should move, you're not building an 80s site! Here too balance is everything, you don't have to be in excess, but a good number of animations change your page, and most of all, your conversion rate! You should give visual feedbacks for everything the user does, the basic one is when he hovers a button / a link. In forms, it's very cool to give feedback in real-time while the user writes. You should also combine animations with illustrations, you can easily make a kind of slideshow with animation (&lt;a href="https://letsgoal-app.herokuapp.com/" rel="noopener noreferrer"&gt;Like here&lt;/a&gt;). But if you want to go beyond your limits, try creating real animations! An idea could also be to use video to retain your users and get yourself better known in a more interactive way.&lt;br&gt;
The last comment is that your website should also work without animations, you cannot rely on them 100%, or you will lose users. Not just for those who don't have JS, but also just for the load time. Allow the user to at least interact with the form before anything else. &lt;/p&gt;


&lt;h3&gt;
  
  
  5. Creativity
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F15xs4n0oxwaj0n25wufq.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F15xs4n0oxwaj0n25wufq.jpg" alt="dragos-gontariu-54VAb3f1z6w-unsplash" width="640" height="425"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Now that you know them, break the rules! Give the user unexpected fun animations in a controlled environment. Your final goal is to engage him, don't bore him. Make him have fun in the process, that's a good plus! Play with the colors, the content, the animations... Remember to always be out of the box. We are all good at being the same as others, the strength is in being unique. Add your personal style. and add things that no one would expect. Sometimes it is better to take risks. Try also to work on images and illustrations, don't just copy the first one on internet but only the best or better, upload yours!&lt;br&gt;
Also, giving a freebie radically changes your conversion rate. I give a &lt;a href="https://worldindev.ck.page" rel="noopener noreferrer"&gt;Udemy free course&lt;/a&gt; (giveaway) and a &lt;a href="https://worldindev.ck.page" rel="noopener noreferrer"&gt;JS cheat sheet&lt;/a&gt;.&lt;/p&gt;



&lt;p&gt;As you just understood, designing a form can be really tough, but these designs and real-life examples will help you for sure!&lt;/p&gt;
&lt;h2&gt;
  
  
  Designs / Concepts
&lt;/h2&gt;
&lt;h3&gt;
  
  
  1. Login - Dark Mode
&lt;/h3&gt;
&lt;h2&gt;
  
  
  &lt;iframe height="600" src="https://codepen.io/soufiane-khalfaoui-hassani/embed/LYpPWda?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;

&lt;/h2&gt;
&lt;h3&gt;
  
  
  2. Contact - Simplicity
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/tutsplus/embed/ZNWQje?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  3. Sign-up - Creative
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/rickyeckhardt/embed/poJwRRb?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  4. Sign-up / Sign-in - Switch
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/chintuyadav/embed/mBaBqW?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  5. Sign-up / Sign-in - Switch 2 - Satisfying
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/joshsorosky/embed/gaaBoB?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  6. Sign-up - Neumorphism / Futuristic
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/swapnet/embed/QWwPVwE?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  7. Newsletter - Simplicity
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/ahmadnasr/embed/WLxbGO?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  8. Password - Fun / Original
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/marcobiedermann/embed/eRNWxQ?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;This was actually done by one of our writers, &lt;a class="mentioned-user" href="https://dev.to/marcobiedermann"&gt;@marcobiedermann&lt;/a&gt;!&lt;/p&gt;




&lt;h3&gt;
  
  
  9. Checkout - Complete / Trust - For entreprises
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/studiojvla/embed/XKQxvy?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  10. Credit Card Info - Perfect
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/jeanoliveira/embed/XRZyVr?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  11. Search - Immediate
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/Schlipak/embed/KpPgQJ/?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  12. Search - Expandable
&lt;/h3&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/chouaibblgn45/embed/rzewrO?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h3&gt;
  
  
  13. Login - Tranquility
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxi75y1q1ovqfusec6wp6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxi75y1q1ovqfusec6wp6.png" alt="image" width="800" height="414"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://colorlib.com/etc/lf/Login_v9/index.html" rel="noopener noreferrer"&gt;By Colorlib&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  14. Event registration - Extravagance
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsevii3sfkse0gutm954g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsevii3sfkse0gutm954g.png" alt="image" width="800" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://colorlib.com/etc/regform/colorlib-regform-3/" rel="noopener noreferrer"&gt;By Colorlib&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  15. Login - Interactivity
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw04dreh0jinrkej4v0r7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw04dreh0jinrkej4v0r7.png" alt="image" width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://colorlib.com/etc/lf/Login_v1/index.html" rel="noopener noreferrer"&gt;By Colorlib&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  16. Contact - Colorful
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg8ove1nxjpt5e3lj3mr0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg8ove1nxjpt5e3lj3mr0.png" alt="image" width="800" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://colorlib.com/etc/cf/ContactFrom_v11/index.html" rel="noopener noreferrer"&gt;By Colorlib&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  17. Sign-in - Clean Design
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9v34f8gtdfvlni7abjd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9v34f8gtdfvlni7abjd.png" alt="image" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dribbble.com/shots/2600895-Login-Form-Clean-Design" rel="noopener noreferrer"&gt;By Rosina Pissaco&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  18. Multiple Login - Accompany the user
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F146wr3o16xj52770fayh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F146wr3o16xj52770fayh.png" alt="image" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dribbble.com/shots/3330825/attachments/3330825-Multiple-Login-Form?mode=media" rel="noopener noreferrer"&gt;By Mahisa Dyan Diptya&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  19. Register - Mobile Friendly
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkt0qfwebom6gkl4x0np2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkt0qfwebom6gkl4x0np2.png" alt="image" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dribbble.com/shots/7084967-Register-Inbox-Views" rel="noopener noreferrer"&gt;By Nimasha Perera&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  20. Phone Verification - Intuitive
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F60dqmj6juywqw96va91i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F60dqmj6juywqw96va91i.png" alt="image" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dribbble.com/shots/7090470-Phone-Verification" rel="noopener noreferrer"&gt;By Nimasha Perera&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  21. Book a service  - Engaging
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0pkrbae3nft0uwauajju.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0pkrbae3nft0uwauajju.png" alt="image" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dribbble.com/shots/8005625-Accounting-Appointment-Form-Page" rel="noopener noreferrer"&gt;By Semas&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  22.  Sign-up - Simple yet powerful
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpu9z77q20dm2stepb8wz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpu9z77q20dm2stepb8wz.png" alt="image" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dribbble.com/shots/11879454-Sign-Up-Form" rel="noopener noreferrer"&gt;By Natalia&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  23. Login - Creative
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa5odghj9z1axepckq2xd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa5odghj9z1axepckq2xd.png" alt="image" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dribbble.com/shots/13869341-Login-Contact-page-Winck" rel="noopener noreferrer"&gt;By Martin Strba&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  24. Sign-up - Professional
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdhusukv34v41efopmyb0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdhusukv34v41efopmyb0.png" alt="image" width="800" height="600"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://dribbble.com/shots/7757250-Sign-up-revamp" rel="noopener noreferrer"&gt;By Ryan Johnson&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  25. Sign-up &amp;amp; Sign-in - Geometric
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F297pn9cuypspph7jca3c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F297pn9cuypspph7jca3c.png" alt="image" width="800" height="600"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://dribbble.com/shots/14765335-Sign-in-Sign-up-form-Mobile" rel="noopener noreferrer"&gt;By Valeriia Cherpak&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;This article may contain sponsored content and I may earn something sponsoring them, at no costs for you.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://getform.io" rel="noopener noreferrer"&gt;Getform&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fndxl7x5w5muw2syb6sqw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fndxl7x5w5muw2syb6sqw.png" alt="getform-logo-white" width="532" height="128"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Hey busy front-end dev, why spend hours taking care of the back-end, which is so boring, when you can use Getform and save hours for real fun? Such as designing a successful form!&lt;br&gt;
Getform is a modern form backend platform that lets you handle your forms on your websites and apps. You can set up a form and start collecting submissions to your form within minutes without having to setup a server or writing any backend.&lt;/p&gt;

&lt;p&gt;Getform can be easily integrate with all the development frameworks, JAMStack, no-code and CMS platforms. Such as Next.js, React, Hugo or GatsbyJS. They also allow you to connect your forms with Zapier, Slack, Airtable, Google Drive, Intercom, MailChip, GitHub, or even Discord!&lt;/p&gt;

&lt;p&gt;The core features of this fantastic product are: &lt;/p&gt;
&lt;h4&gt;
  
  
  Email notifications
&lt;/h4&gt;

&lt;p&gt;If you wish to receive an email everytime a visitor submits to you form, you can setup email notifications using the email notification plugin. More &lt;a href="https://docs.getform.io/plugins/" rel="noopener noreferrer"&gt;here&lt;/a&gt; &lt;/p&gt;
&lt;h4&gt;
  
  
  Advanced workflows using Zapier
&lt;/h4&gt;

&lt;p&gt;Getform lets you integrate with other tools to allow you to wrangle your form submissions. Using Zapier integration, you can accept incoming submissions and connect with more 1500+ applications. More &lt;a href="https://docs.getform.io/integrations/zapier/what-is-zapier/" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Spam preventing with reCAPTCHA
&lt;/h4&gt;

&lt;p&gt;Spam is also a real thing. You don’t want your inbox flooded with spam, so you can take advantage of Getform's Google reCaptcha Integration for both of the reCaptcha versions. More &lt;a href="https://docs.getform.io/installations/spam-protection/recaptcha-v3/" rel="noopener noreferrer"&gt;here&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;--&amp;gt; And File Upload Forms!&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/YEH2GLFJhQY"&gt;
&lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  Real-Life Examples
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. &lt;a href="https://www.reddit.com/login/" rel="noopener noreferrer"&gt;Reddit&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F48vpw4xmk1g28m6rm04b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F48vpw4xmk1g28m6rm04b.png" alt="image" width="349" height="729"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  2. &lt;a href="https://medium.com/log-in" rel="noopener noreferrer"&gt;Medium&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdmcyfowrf46q3pvp3kid.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdmcyfowrf46q3pvp3kid.png" alt="image" width="800" height="381"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fboic1piyry9scxp55mkg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fboic1piyry9scxp55mkg.png" alt="image" width="800" height="380"&gt;&lt;/a&gt;  &lt;/p&gt;




&lt;h3&gt;
  
  
  3. &lt;a href="https://www.grammarly.com/signin" rel="noopener noreferrer"&gt;Grammarly&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F27uql9g5fyp8nw7f8oh2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F27uql9g5fyp8nw7f8oh2.png" alt="image" width="800" height="371"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  4. &lt;a href="https://miro.com/signup/" rel="noopener noreferrer"&gt;Miro&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2vobk1l530og99jib7jq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2vobk1l530og99jib7jq.png" alt="image" width="800" height="394"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  5. &lt;a href="https://www.pinterest.co.uk/" rel="noopener noreferrer"&gt;Pinterest&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1c6ytqszd4lo5pgyz9s8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1c6ytqszd4lo5pgyz9s8.png" alt="image" width="336" height="727"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  6. &lt;a href="https://discord.com/" rel="noopener noreferrer"&gt;Discord&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2mkszjij29au5fd22ao6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2mkszjij29au5fd22ao6.png" alt="image" width="800" height="344"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  7. &lt;a href="https://www.netflix.com/it-en/" rel="noopener noreferrer"&gt;Netflix&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp00milq8d4px65zo7e4k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp00milq8d4px65zo7e4k.png" alt="image" width="800" height="337"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  8. &lt;a href="https://github.com/" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbnpep1vbmoyxnaqqffvi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbnpep1vbmoyxnaqqffvi.png" alt="image" width="800" height="386"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  9. &lt;a href="https://app.netlify.com/signup" rel="noopener noreferrer"&gt;Netlify&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs011owc7mw3mng3n12tb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs011owc7mw3mng3n12tb.png" alt="image" width="800" height="397"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  10. &lt;a href="https://id.docker.com/login" rel="noopener noreferrer"&gt;Docker&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjq7307lz5y6vwnp0d1x7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjq7307lz5y6vwnp0d1x7.png" alt="image" width="800" height="611"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  11. &lt;strong&gt;&lt;a href="https://app.getform.io/login" rel="noopener noreferrer"&gt;Getform&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faez8gyeu17br79dzy4ur.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faez8gyeu17br79dzy4ur.png" alt="image" width="562" height="774"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4bcojwcc6yktqkmj2n5h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4bcojwcc6yktqkmj2n5h.png" alt="image" width="542" height="628"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  12. &lt;a href="https://login.framer.com/sign-up/" rel="noopener noreferrer"&gt;Framer&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F69vvjimbgbrghs7vctum.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F69vvjimbgbrghs7vctum.png" alt="image" width="800" height="374"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  13. &lt;a href="https://www.figma.com/login" rel="noopener noreferrer"&gt;Figma&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feekfctxb91dksf74c6cp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feekfctxb91dksf74c6cp.png" alt="image" width="800" height="777"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  14. &lt;a href="https://my.friday.app/users/sign_up" rel="noopener noreferrer"&gt;Friday&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbcptpt9w82o7lbmek9je.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbcptpt9w82o7lbmek9je.png" alt="image" width="800" height="369"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  15. &lt;a href="https://lunchclub.com/" rel="noopener noreferrer"&gt;LunchClub&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwdtr4ntpjib5p2cza94z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwdtr4ntpjib5p2cza94z.png" alt="image" width="800" height="370"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  16. &lt;a href="https://app.pluralsight.com/id" rel="noopener noreferrer"&gt;Pluralsight&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi6r2bncmzo1s684cff1l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi6r2bncmzo1s684cff1l.png" alt="image" width="800" height="364"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  17. &lt;a href="https://unsplash.com/join" rel="noopener noreferrer"&gt;Unsplash&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm62f044vvnm5zu4qw8tg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm62f044vvnm5zu4qw8tg.png" alt="image" width="800" height="391"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  18. &lt;a href="https://login.squarespace.com/api/1/login/oauth/provider/authorize" rel="noopener noreferrer"&gt;Squarespace&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F349f5ht3rh0aw9py34qs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F349f5ht3rh0aw9py34qs.png" alt="image" width="800" height="443"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  19. &lt;a href="https://identity.getpostman.com/login?continue=https%3A%2F%2Fgo.postman.co%2Fbuild&amp;amp;_ga=2.103517760.1583888813.1619514294-1020132607.1619514294" rel="noopener noreferrer"&gt;Postman&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F04gilnji8byv2rw21tth.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F04gilnji8byv2rw21tth.png" alt="image" width="632" height="750"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  20. &lt;a href="https://quarkly.io/auth" rel="noopener noreferrer"&gt;Quarkly&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwdtr4ntpjib5p2cza94z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwdtr4ntpjib5p2cza94z.png" alt="image" width="800" height="370"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  21. &lt;a href="https://www.wappalyzer.com/" rel="noopener noreferrer"&gt;Wappalyzer&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkedm9oesusglzw40clcc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkedm9oesusglzw40clcc.png" alt="image" width="800" height="384"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  22. &lt;a href="https://craftwork.design/checkout/" rel="noopener noreferrer"&gt;Craftwork&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frno8hy20oibr61dg3yzs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frno8hy20oibr61dg3yzs.png" alt="image" width="800" height="356"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  23. &lt;a href="https://jacekjeznach.com/contact" rel="noopener noreferrer"&gt;Jacek Jeznach Porfolio&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4cuq03bgzvnsiksdraxk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4cuq03bgzvnsiksdraxk.png" alt="image" width="800" height="375"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  24. &lt;a href="https://blush.design/sign-in" rel="noopener noreferrer"&gt;Blush design&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9m21tko4s2uddei3egzx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9m21tko4s2uddei3egzx.png" alt="image" width="800" height="445"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  25. &lt;a href="https://www.designstripe.com/?dscid=designstripe&amp;amp;dsref=www.drawkit.io" rel="noopener noreferrer"&gt;Designstripe&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvhowfzsy6wqw134c7ub1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvhowfzsy6wqw134c7ub1.png" alt="image" width="800" height="383"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;p&gt;Thanks for reading and Happy coding ❤&lt;/p&gt;




&lt;p&gt; &lt;/p&gt;

&lt;h2&gt;
  
  
  🎉 Giveaway ⚡
&lt;/h2&gt;

&lt;p&gt;We are giving away any course you need on Udemy. Any price any course.&lt;br&gt;
To enter you have to do the following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;👍 React to this post&lt;/li&gt;
&lt;li&gt;✉️ Subscribe to our &lt;a href="https://worldindev.ck.page" rel="noopener noreferrer"&gt;newsletter&lt;/a&gt; &amp;lt;-- Very important&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt; &lt;/p&gt;




&lt;p&gt;This article is sponsored by &lt;a href="https://getform.io/" rel="noopener noreferrer"&gt;Getform&lt;/a&gt;:&lt;br&gt;
Collect submissions, receive emails and connect your HTML form&lt;br&gt;
with popular apps. Perfect for JAMStack and API-driven static websites. &amp;lt;-- Trusted by 25K+ customers, processed over 30M+ submissions, with fully secure infrastructure!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>css</category>
      <category>html</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Web Dev Notes - Resource Compilation + Cheat Sheet</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Tue, 04 May 2021 13:57:29 +0000</pubDate>
      <link>https://dev.to/worldindev/web-dev-notes-resource-compilation-cheat-sheet-2big</link>
      <guid>https://dev.to/worldindev/web-dev-notes-resource-compilation-cheat-sheet-2big</guid>
      <description>&lt;p&gt;&lt;code&gt;Hello World!&lt;/code&gt; Seems like we're in a streak to be the best articles of the week here at DEV, will this one be too at the top? Leave a like to know! I discovered online an incredible Roadmap / Web Development notes written by &lt;a href="https://github.com/bronsonavila" rel="noopener noreferrer"&gt;Bronson Avila&lt;/a&gt;, who in his great kindness allowed me to post the content here. Hope this will help you!&lt;/p&gt;




&lt;p&gt;&lt;a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;--&amp;gt; Grab the downloadable PDF version &lt;a href="https://worldindev.ck.page" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;🔖 - Waaait, don't leave this page without bookmarking (save) it!!&lt;/p&gt;

&lt;p&gt;Table of Content: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
Frontend

&lt;ol&gt;
&lt;li&gt;HTML&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;li&gt;Bootstrap&lt;/li&gt;
&lt;li&gt;Javascript Basics&lt;/li&gt;
&lt;li&gt;DOM&lt;/li&gt;
&lt;li&gt;JS Advanced&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&amp;lt;-- Conversion to Markdown In Progress --&amp;gt; Available &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;here&lt;/a&gt;  for now &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
Backend

&lt;ol&gt;
&lt;li&gt;Basics&lt;/li&gt;
&lt;li&gt;Command Line&lt;/li&gt;
&lt;li&gt;Node&lt;/li&gt;
&lt;li&gt;Express&lt;/li&gt;
&lt;li&gt;RESTful&lt;/li&gt;
&lt;li&gt;Databases&lt;/li&gt;
&lt;li&gt;Authentication&lt;/li&gt;
&lt;li&gt;Git&lt;/li&gt;
&lt;li&gt;Deployment&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;Remember the like ❤️&lt;/p&gt;

&lt;h2&gt;
  
  
  Frontend  &lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;HTML&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;li&gt;Bootstrap&lt;/li&gt;
&lt;li&gt;Javascript Basics&lt;/li&gt;
&lt;li&gt;DOM&lt;/li&gt;
&lt;li&gt;JS Advanced&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://developer.mozilla.org/en-US/docs/Learn/HTML/Introduction_to_HTML" rel="noopener noreferrer"&gt;HTML&lt;/a&gt;  &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Document (individual elements combined to form an entire HTML page)&lt;/p&gt;

&lt;p&gt;Doctype: &lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Required as the first line of an HTML document (historical artifact).&lt;/p&gt;

&lt;p&gt;Root Element: &lt;code&gt;&amp;lt;html&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Follows the "doctype" and wraps around all content on the entire page.&lt;/p&gt;

&lt;p&gt;Head Element: &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Container for things that do not appear as viewable content (e.g., keywords and descriptions that will appear in search results, CSS, character set declarations, etc.).&lt;/p&gt;

&lt;p&gt;Character Set: &lt;code&gt;&amp;lt;meta charset="UTF-8"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Allows document to use "utf-8" character set, which includes most characters from all known human languages (nests within head element).&lt;/p&gt;

&lt;p&gt;Title: &lt;code&gt;&amp;lt;title&amp;gt;&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;Sets the title that appears in browser tab (nests within head element).&lt;/p&gt;

&lt;p&gt;Also appears as the search result in Google.&lt;/p&gt;

&lt;p&gt;Body: &lt;code&gt;&amp;lt;body&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Contains all of the content that will be shown to the viewer.&lt;/p&gt;

&lt;p&gt;Elements (content + opening/closing tags)&lt;/p&gt;

&lt;p&gt;Article: &lt;a href="https://dev.to/devlorenzo/html-tags-cheat-sheet-pip"&gt;The ultimate HTML Tags Cheat Sheet 🔥&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Block Elements form a visible block on a page (e.g., paragraphs, lists, navigation menus, footers, etc.):&lt;/p&gt;

&lt;p&gt;Paragraph: &lt;code&gt;&amp;lt;p&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Divider: &lt;code&gt;&amp;lt;hr&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Headings: &lt;code&gt;&amp;lt;h1&amp;gt;&lt;/code&gt; through &lt;code&gt;&amp;lt;h6&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;NOTE: As a general rule, try to have only one &lt;code&gt;&amp;lt;h1&amp;gt;&lt;/code&gt; tag in your HTML document, and it should be the biggest text element on the page.&lt;/p&gt;

&lt;p&gt;Generic Container: &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Lists (each item within a type of list needs to be identified by the &lt;code&gt;"&amp;lt;li&amp;gt;"&lt;/code&gt; tag):&lt;/p&gt;

&lt;p&gt;Ordered Lists (lists that are numbered): &lt;code&gt;&amp;lt;ol&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Unordered Lists (lists composed of bullet points: &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Tables: &lt;code&gt;&amp;lt;table&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Table Row: &lt;code&gt;&amp;lt;tr&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Table Header (consists of one cell within a row): &lt;code&gt;&amp;lt;th&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Should be nested within &lt;code&gt;&amp;lt;thead&amp;gt;&lt;/code&gt; under main table (semantics).&lt;/p&gt;

&lt;p&gt;Table Data (consists of one cell within a row): &lt;code&gt;&amp;lt;td&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Should be nested within &lt;code&gt;&amp;lt;tbody&amp;gt;&lt;/code&gt; under main table (semantics).&lt;/p&gt;

&lt;p&gt;Borders can be added by entering &lt;code&gt;&amp;lt;table border="1"&amp;gt;&lt;/code&gt;, although this is discouraged, as CSS should be used for styling.&lt;/p&gt;

&lt;p&gt;Forms (interactive controls to submit information to a web server): &lt;code&gt;&amp;lt;form&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Typically contain the "action" (the URL to send form data to) and "method" (the type of HTTP request, such as "GET" to receive information from the server and "POST" to add information to the serve) attributes, e.g.:\&lt;br&gt;
    &lt;code&gt;&amp;lt;form action="/my-form-submitting-page" method="POST"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Input (used to accept data from the user): &lt;code&gt;&amp;lt;input&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The operation of &lt;code&gt;&amp;lt;input&amp;gt;&lt;/code&gt; depends upon its type attribute.  For a complete list of attributes, view &lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types" rel="noopener noreferrer"&gt;Form Input Types&lt;/a&gt;.  Examples:&lt;/p&gt;

&lt;p&gt;Text (can be used for user names): &lt;code&gt;type="text"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Password: &lt;code&gt;type="password"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Placeholder (temporary text in input fields; used with "text" and "password" attributes): &lt;code&gt;placeholder="insert-text-here"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Button: &lt;code&gt;type="button"&lt;/code&gt; &lt;code&gt;value="insert-text-here"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Simple Submit button: &lt;code&gt;type="submit"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Alternatively, if placed at the end of a form, use the following to create an even simpler submit button: &lt;code&gt;&amp;lt;button&amp;gt;insert-text-here&amp;lt;/button&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Checkbox (square box for multiple choices): &lt;code&gt;type="checkbox"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To have the checkbox already marked upon loading, add the attribute "checked" to the input.&lt;/p&gt;

&lt;p&gt;Radio Button (circular icon for one choice): &lt;code&gt;type="radio"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;In order to make the user only able to select one choice, you must add the "name" attribute, which must be common among all choices.&lt;/p&gt;

&lt;p&gt;The "value" attribute is necessary for the query string to understand the meaning behind each choice; otherwise, it will simply state "name=on".&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;label&lt;/span&gt; &lt;span class="na"&gt;for=&lt;/span&gt;&lt;span class="s"&gt;"cats"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Cats:&lt;span class="nt"&gt;&amp;lt;/label&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"pet-choice"&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"cats"&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"radio"&lt;/span&gt; &lt;span class="na"&gt;value=&lt;/span&gt;&lt;span class="s"&gt;"CATS"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;label&lt;/span&gt; &lt;span class="na"&gt;for=&lt;/span&gt;&lt;span class="s"&gt;"dogs"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Dogs:&lt;span class="nt"&gt;&amp;lt;/label&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"pet-choice"&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"dogs"&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"radio"&lt;/span&gt; &lt;span class="na"&gt;value=&lt;/span&gt;&lt;span class="s"&gt;"DOGS"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Dropdown Menus: &lt;code&gt;&amp;lt;select&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;For every possible option to select, use an &lt;code&gt;&amp;lt;option&amp;gt;&lt;/code&gt; tag.&lt;/p&gt;

&lt;p&gt;In order for the query string to understand that an option has been selected from the dropdown menu, the "name" attribute must be included in the &lt;code&gt;&amp;lt;select&amp;gt;&lt;/code&gt; tag, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;select&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"color"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;`
    &lt;span class="nt"&gt;&amp;lt;option&amp;gt;&lt;/span&gt;White&lt;span class="nt"&gt;&amp;lt;/option&amp;gt;&lt;/span&gt;\
    &lt;span class="nt"&gt;&amp;lt;option&amp;gt;&lt;/span&gt;Black&lt;span class="nt"&gt;&amp;lt;/option&amp;gt;&lt;/span&gt;\
&lt;span class="nt"&gt;&amp;lt;/select&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you want the query string to contain text other than "White" or "Black" in the example above, use the "value" attribute in the &lt;code&gt;&amp;lt;option&amp;gt;&lt;/code&gt; tag, e.g.:&lt;br&gt;
    &lt;code&gt;&amp;lt;option value="happy"&amp;gt;☺&amp;lt;/option&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Text Areas (multi-line plain-text editing control): &lt;code&gt;&amp;lt;textarea&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;You can specify how large the text area is by using the "rows" and "cols" attributes. &lt;/p&gt;

&lt;p&gt;In order for the query string to process the data in the text area, you must use the "name" attribute.&lt;/p&gt;

&lt;p&gt;Example: &lt;code&gt;&amp;lt;textarea name="paragraph" rows="10" cols="50"&amp;gt;&amp;lt;/textarea&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Labels (add captions for individual items in a form): &lt;code&gt;&amp;lt;label&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;A label can be used by placing the control element inside the &lt;code&gt;&amp;lt;label&amp;gt;&lt;/code&gt; element, or by using the "for" and "id" attributes:&lt;/p&gt;

&lt;p&gt;For example,&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;label&amp;gt;&lt;/span&gt;Username&lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/label&amp;gt;&lt;/span&gt;
    ...is identical to
&lt;span class="nt"&gt;&amp;lt;label&lt;/span&gt; &lt;span class="na"&gt;for=&lt;/span&gt;&lt;span class="s"&gt;"username"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Username&lt;span class="nt"&gt;&amp;lt;/label&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"username"&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Validations ensure that users fill out forms in the correct format, e.g.:&lt;/p&gt;

&lt;p&gt;The Boolean attribute "required" makes a field mandatory:&lt;br&gt;
    &lt;code&gt;&amp;lt;label&amp;gt;Username&amp;lt;input type="text" required&amp;gt;&amp;lt;/label&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Only works if the browser (like Chrome) allows it.&lt;/p&gt;

&lt;p&gt;By changing type from "text" to "email", the browser will ensure that the field contains an @ symbol.&lt;/p&gt;

&lt;p&gt;Inline Elements are contained within block level elements and do not cause new lines to appear:&lt;/p&gt;

&lt;p&gt;Italics: &lt;code&gt;&amp;lt;em&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Bold: &lt;code&gt;&amp;lt;strong&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Generic Container: &lt;code&gt;&amp;lt;span&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;BUT NOTE: Empty Elements contain only a single tag:&lt;/p&gt;

&lt;p&gt;Image: &lt;code&gt;&amp;lt;img src="https://www.google.com/logo.png"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;NOTE: Image width can be modified like so...&lt;br&gt;
    &lt;code&gt;&amp;lt;img width="50" src="https://www.google.com/logo.png"&amp;gt;&lt;/code&gt;&lt;br&gt;
    ...but is discouraged, as styling should be done by CSS.&lt;/p&gt;

&lt;p&gt;Input: &lt;code&gt;&amp;lt;input type="text"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;For a complete list of elements, view the &lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element" rel="noopener noreferrer"&gt;MDN Element Reference&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;TIP: In Sublime, press "Ctrl+Shift+D" to replicate an entire line of an element.&lt;/p&gt;

&lt;p&gt;Attributes (extra info; does not appear in content; target of style info)&lt;/p&gt;

&lt;p&gt;Components:&lt;/p&gt;

&lt;p&gt;Space between it and the element name (or prior attribute),&lt;/p&gt;

&lt;p&gt;Attribute name followed by an equals sign, and&lt;/p&gt;

&lt;p&gt;Attribute value surrounded by quotation marks.&lt;/p&gt;

&lt;p&gt;Double or single quotes may be used, but must be done consistently.  You can nest a single quote within a double quote (and vice versa), but if you want to nest the same type of quote, you must use HTML Entities (e.g., " or ').&lt;/p&gt;

&lt;p&gt;Examples:&lt;/p&gt;

&lt;p&gt;Class: &lt;code&gt;&amp;lt;p class="editor-note"&amp;gt;content&amp;lt;/p&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Can be paired with the "anchor" element: &lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Hyperlink with Title:&lt;br&gt;
    &lt;code&gt;&amp;lt;a href="https://www.google.com/" title="Google"&amp;gt;content&amp;lt;/a&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;BUT NOTE: Boolean Attributes can be written without a value, but technically always have only one value (generally the same as the attribute name:&lt;/p&gt;

&lt;p&gt;Disabled: &lt;code&gt;&amp;lt;input type="text" disabled="disabled"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Creates a text box in which typing is disabled.&lt;/p&gt;

&lt;p&gt;May also be written as:&lt;br&gt;
    &lt;code&gt;&amp;lt;input type="text" disabled&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;For a complete list of attributes, view the &lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes" rel="noopener noreferrer"&gt;MDN Attribute Reference&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Entity References (make special HTML syntax characters appear as normal text):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;&lt;/span&gt;  &lt;span class="err"&gt;=&lt;/span&gt;  &lt;span class="err"&gt;&amp;amp;&lt;/span&gt;&lt;span class="na"&gt;lt&lt;/span&gt;&lt;span class="err"&gt;;&lt;/span&gt;

&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;  =  &lt;span class="ni"&gt;&amp;amp;gt;&lt;/span&gt;

"  =  &lt;span class="ni"&gt;&amp;amp;quot;&lt;/span&gt;

'  =  &lt;span class="ni"&gt;&amp;amp;apos;&lt;/span&gt;

&lt;span class="err"&gt;&amp;amp;&lt;/span&gt;  =  &lt;span class="ni"&gt;&amp;amp;amp;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;HTML Comments (write comments in the code that are invisible to the user by wrapping them in special markers):&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;!-- and --&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;TIP:  In Sublime, you can (1) select text, and (2) hold "Ctrl+/" to turn text into comment.&lt;/p&gt;

&lt;p&gt;⬆ Back to Top&lt;/p&gt;




&lt;h3&gt;
  
  
  CSS  &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;The General Rule&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;selector&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;span class="py"&gt;property&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="py"&gt;anotherProperty&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For example, make all &lt;code&gt;&amp;lt;h1&amp;gt;&lt;/code&gt; tags purple with 56-pixel font:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;h1&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;purple&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nl"&gt;font-size&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;56px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Three Basic Selectors:
&lt;/h4&gt;

&lt;p&gt;Element selectors select all instances of a given element.  For example, "div" is a CSS element selector that will modify the properties of all &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; HTML tags.&lt;/p&gt;

&lt;p&gt;The ID selector selects a single element with an octothorp ("#") ID (only one per page).  For example, the following HTML/CSS combination will result in the word "hello" appearing in yellow, while the word "goodbye" will remain as is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"special"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;hello&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;goodbye&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nf"&gt;#special&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;yellow&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The Class selector selects all elements in a given class by functioning just like an ID selector; however, a class is instead prefaced with a period (".").  For example, the following items marked as "completed" on a "To Do List" will be crossed out with a line:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"completed"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;TASK #1&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;\
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"completed"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;TASK #2&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;\
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nc"&gt;.completed&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;text-decoration&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;line-through&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;An element can be modified by multiple class or ID tags by simply adding a space between the two tag names, e.g.:&lt;br&gt;
    &lt;code&gt;&amp;lt;p class="completed uncompleted"&amp;gt;Text&amp;lt;/p&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Five More Advanced Selectors:
&lt;/h4&gt;

&lt;p&gt;The Star (*) selector applies to every element on the page.&lt;/p&gt;

&lt;p&gt;The Descendant selector applies to selectors that have been "nested" under another.  For example, if you want to modify the color of only those &lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt; tags that are nested within the &lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt;tags of a &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; list, use the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;ul&lt;/span&gt; &lt;span class="nt"&gt;li&lt;/span&gt; &lt;span class="nt"&gt;a&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;red&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In addition to HTML tags, CSS selectors such as "ID" or "Class" may be used within a Descendant selector.&lt;/p&gt;

&lt;p&gt;HOWEVER: If, for example, you have a second-tier &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; nested within a first-tier &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; that is nested within &lt;code&gt;&amp;lt;div id="box"&amp;gt;&lt;/code&gt;, and you only want to select the first-tier &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; and not the second-tier, then you must use the "&amp;gt;" combinator to select only the DIRECT first-tier "child" &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; (rather than the second-tier "grandchild" &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt;) of &lt;code&gt;&amp;lt;div id="box"&amp;gt;&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nf"&gt;#box&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;ul&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
    &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;red&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="err"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The Adjacent (+) selector will select only the element that comes IMMEDIATELY after another element (a "sibling" element, rather than a "nested" element).  For example, to modify the font size of all &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; tags that follow an &lt;code&gt;&amp;lt;h4&amp;gt;&lt;/code&gt; tag (which are typed on the same "level" as the &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; tags, and not nested under them), use the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;h4&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nt"&gt;ul&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;font-size&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;24px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If, in the above example, you want to select ALL &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; tags after any &lt;code&gt;&amp;lt;h4&amp;gt;&lt;/code&gt; tag, then use the more generalized sibling combinator of "~" instead of "+".&lt;/p&gt;

&lt;p&gt;The Attribute selector will allow the selection of any element based off of any attribute.  For example, to change the font family of all &lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt; tags that link to Google, use the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;a&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;href&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"https://www.google.com/"&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;font-family&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;cursive&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This selector an also be used to select all images of a particular source, or all inputs of a particular type, such as all checkboxes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;input&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"checkbox"&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;border&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;2px&lt;/span&gt; &lt;span class="nb"&gt;solid&lt;/span&gt; &lt;span class="no"&gt;green&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;TIP:  See the complete list of &lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Attribute_selectors" rel="noopener noreferrer"&gt;Attribute Selectors&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The Nth-of-Type selector takes a specific number and selects the "-nth" instance of an element.  For example, to change the background color of every second &lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt; tag in every list (literally meaning the second tag, not every other tag), use the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;li&lt;/span&gt;&lt;span class="nd"&gt;:nth-of-type&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="err"&gt;2&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
    &lt;span class="nl"&gt;background-color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;rgba&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;100&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="m"&gt;175&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="m"&gt;225&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="m"&gt;0.5&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;NOTE: To select every other tag, use the phrases (even) or (odd) instead of a specific number.&lt;/p&gt;

&lt;p&gt;For more advanced selectors, view &lt;a href="https://code.tutsplus.com/tutorials/the-30-css-selectors-you-must-memorize--net-16048" rel="noopener noreferrer"&gt;The 30 CSS Selectors You Must Memorize&lt;/a&gt;.&lt;/p&gt;

&lt;h4&gt;
  
  
  CSS Location:
&lt;/h4&gt;

&lt;p&gt;CSS should generally be saved to its own file, but can also be included in the HTML head by using the &lt;code&gt;&amp;lt;style&amp;gt;&lt;/code&gt; tag:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;style &lt;/span&gt;&lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text/css"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;li&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;red&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
 &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/style&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The preferred method is to use a &lt;code&gt;&amp;lt;link&amp;gt;&lt;/code&gt; tag in the HTML head to refer to the separate file containing CSS:&lt;br&gt;
    &lt;code&gt;&amp;lt;link rel="stylesheet" type="text/css" href="directory/filename.css"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Specificity is the means by which browsers decide which CSS property values are the most relevant to an element and, therefore, will be applied (e.g., if the body is styled to have red text, but a paragraph within the body is styled to have green text, then the text will be green because the green text style is more relevant to the specific paragraph than the general body).&lt;/p&gt;

&lt;p&gt;The following list of selector types increases by specificity (in magnitudes of 10):&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Type selectors (e.g., li) and pseudo-element (e.g., :before)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Class selectors (e.g., .hello), attributes selectors (e.g., [type="text"]) and pseudo-classes (e.g., :hover)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ID selectors (e.g., #hello)&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This &lt;a href="https://specificity.keegan.st/" rel="noopener noreferrer"&gt;Specificity Calculator&lt;/a&gt; may be used to test CSS specificity rules.&lt;/p&gt;
&lt;h4&gt;
  
  
  The Box Model
&lt;/h4&gt;

&lt;p&gt;In a document, each element is represented as a rectangular box.  In CSS, each of these boxes is described using the standard "box model."  Each box has four edges: (1) Content Edge, (2) Padding Edge, (3) Border Edge, and (4) Margin Edge.  Padding is the space between the border and the element within the border, and the margin is the space between the border and everything outside of the border. &lt;/p&gt;

&lt;p&gt;The content edge can be controlled by setting the "width" and "height" properties in "px" or "%" (with percentage in relation to the parent element), which in turn pushes out the border edge as well, as there is direct contact between the content and border (if no padding has yet been set).&lt;/p&gt;

&lt;p&gt;NOTE: By using the "max-width" property in conjunction with "width", you can tell the browser to make an element's width a certain percentage, but then also cap that width to a maximum number of pixels, e.g.:\&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nf"&gt;#container&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
    &lt;span class="nl"&gt;width&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;66.66%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
    &lt;span class="nl"&gt;max-width&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;700px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Space can be added between the content edge and border edge (and between the border edge and the next element's edge) by using the "padding" and "margin" properties respectively (in "px" or "%").&lt;/p&gt;

&lt;p&gt;By default, padding and borders are set to go around all edges of an element, but can be limited by using more specific properties for top, right, bottom, and left---such as "padding-left" or "margin-top".&lt;/p&gt;

&lt;p&gt;Alternatively, rather than typing a line of CSS for all four sides, the following shorthand can be used (with the first value setting the top property, and the remainder moving in a clockwise fashion):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;p&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;margin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;20px&lt;/span&gt; &lt;span class="m"&gt;40px&lt;/span&gt; &lt;span class="m"&gt;60px&lt;/span&gt; &lt;span class="m"&gt;80px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;NOTE: By setting the "margin" property to "auto" on the left and right, an element will automatically be horizontally centered:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;p&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;margin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="nb"&gt;auto&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="nb"&gt;auto&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The above syntax can also be shorted as (with the first value representing the vertical axis, and the second value representing the horizontal axis):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;p&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;margin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="nb"&gt;auto&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Colors
&lt;/h4&gt;

&lt;p&gt;Colors can be created through the Hexadecimal system by combining the octothorp (#) with a string of 6 hexadecimal "numbers" from 0-F, e.g.:&lt;br&gt;
    &lt;code&gt;color: #FF1493;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This system follows an RGB scheme in which the first two numbers modify the amount of "red," the second two modify "green," and the last two modify "blue."&lt;/p&gt;

&lt;p&gt;Alternatively, colors can be created through the RGB system: 3 channels consisting of red, green, and blue, with each ranging from 0-255, e.g.:&lt;br&gt;
    &lt;code&gt;color: rgb(0, 255, 0);&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Colors can be made Transparent through the RGBA system.  Just like RGB but with an alpha (transparency) channel ranging from 0.0-1.0, e.g.:&lt;br&gt;
    &lt;code&gt;color: rgba(11, 99, 150, .6);&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Backgrounds
&lt;/h4&gt;

&lt;p&gt;Follows the same format as colors, e.g., &lt;code&gt;background: #FF6789;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The background property can also set a background image, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;body&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;background&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sx"&gt;url(http://www.website.com/image.png)&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To prevent the background from Repeating an image, add the following property:&lt;br&gt;
&lt;code&gt;background-repeat: no-repeat;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To allow the background image to Stretch out across the entire body, use:&lt;br&gt;
&lt;code&gt;background-size: cover;&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Borders
&lt;/h4&gt;

&lt;p&gt;Borders have three key properties: "width" (typically in pixels), "color" (as noted above), and "style" (generally solid, dotted, or dashed).  All three properties must be present in order for a border to take effect, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;h1&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
    &lt;span class="nl"&gt;border-width&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;5px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nl"&gt;border-style&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;solid&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nl"&gt;border-color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;purple&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The alternative shorthand syntax may also be used (in the specified order):&lt;br&gt;
    &lt;code&gt;border: 5px solid purple;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Article: &lt;a href="https://dev.to/devlorenzo/css-how-to-make-a-border-animation-part-2-46fm"&gt;CSS: How to make a cool border animation&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Fonts
&lt;/h4&gt;

&lt;p&gt;Font-Family specifies the font for an element:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;p&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;font-family&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;Arial&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;While not always necessary, you may sometimes have to put quotation marks around the font name---particularly when the font name begins with a number.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.cssfontstack.com/" rel="noopener noreferrer"&gt;CSS Font Stack&lt;/a&gt; shows what percentages of operating systems have a given system font (useful for choosing a safe bet on system compatibility).&lt;/p&gt;

&lt;p&gt;However, rather than using those limited fonts, it is better to use &lt;a href="https://fonts.google.com/" rel="noopener noreferrer"&gt;Google Fonts&lt;/a&gt;, choose a font, and embed the font's stylesheet link in your HTML &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt; prior to the CSS link, e.g.:&lt;br&gt;
    &lt;code&gt;&amp;lt;link href="https://fonts.googleapis.com/css?family=Esteban" rel="stylesheet"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Font-Size specifies how big the font appears (typically in pixels or "px"):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;h1&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
    &lt;span class="nl"&gt;font-size&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;25px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Another size unit is "em", which dynamically sets font size in relation to a parent element.  For example, if you want to make a section of a paragraph's text in &lt;span&gt; tags be twice the size of the rest of the text in the &lt;code&gt;&amp;lt;p&amp;gt;&lt;/code&gt; tags, you would say:&lt;br&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;span&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
    &lt;span class="nl"&gt;font-size&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;2em&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;BUT NOTE:  What constitutes the "standard" 1em (i.e., the default font size on a page without CSS markup) varies from browser to browser, although the size is typically around 16 PIXELS.  To ensure uniformity among browsers, it is useful to set the body's font size at the outset.&lt;/p&gt;

&lt;p&gt;ALSO: Similar to "em" is "rem", which---rather than setting font size in relation to the parent element---sets the font size in relation to the "root" element on the page (i.e., the default font size discussed above).&lt;/p&gt;

&lt;p&gt;Font-Weight specifies how thick or thin the font appears.&lt;/p&gt;

&lt;p&gt;Typically involves absolute values of "normal" or "bold", or relative (to parent) values of "lighter" and "bolder", but can also be assigned a numeric value in increments of 100 generally from "100" to "800" depending on the font itself.&lt;/p&gt;

&lt;p&gt;Line-Height controls the height of a given line (similar to changing line spacing in Word to 1.5 or 2.0, which means that a larger font will result in larger spacing).&lt;/p&gt;

&lt;p&gt;Text-Align controls where an element's text is aligned on the page (typically "left", "right", and "center").&lt;/p&gt;

&lt;p&gt;Text-Decoration is used to give text effects such as "underline", "overline", or "line-through".&lt;/p&gt;
&lt;h4&gt;
  
  
  Float
&lt;/h4&gt;

&lt;p&gt;Normally, block level elements (such as &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt;) are stacked directly underneath the preceding element on the page.  To change this, use the "float" property and specify a value of the direction in which the element should float ("left", "right", "none").  &lt;/p&gt;

&lt;p&gt;When an element is floated, it is taken out of the normal flow of the document (though still remaining part of it), and it is shifted to the left or right until it touches the edge of its containing box, or another floated element.&lt;/p&gt;

&lt;p&gt;When &lt;code&gt;&amp;lt;img&amp;gt;&lt;/code&gt; tags are laid out in a consecutive sequence, HTML automatically places some small amount of white space between the images.  If you want to remove the white space, you can use "float" to remove that white space.&lt;/p&gt;

&lt;p&gt;Article: &lt;a href="https://dev.to/devlorenzo/css-how-to-make-a-website-responsive-19kg"&gt;CSS: How to make a website responsive&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;⬆ Back to Top&lt;/p&gt;


&lt;h3&gt;
  
  
  &lt;a href="https://getbootstrap.com/" rel="noopener noreferrer"&gt;Bootstrap&lt;/a&gt; &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;h4&gt;
  
  
  About
&lt;/h4&gt;

&lt;p&gt;Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile-first projects.&lt;/p&gt;

&lt;p&gt;To incorporate Bootstrap's CSS into your project, you can do either one of the following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Download the bootstrap.css file, placing it into your project directory, and creating a &lt;code&gt;&amp;lt;link&amp;gt;&lt;/code&gt; to the bootstrap.css file; or&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Paste the following &lt;code&gt;&amp;lt;link&amp;gt;&lt;/code&gt; to the bootstrap.css file, which is hosted online:\&lt;br&gt;
&lt;code&gt;&amp;lt;link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"&amp;gt;&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;NOTE: The semantics in Bootstrap have been criticized as being sometimes meaningless, and another contender for performing these tasks is &lt;a href="https://semantic-ui.com/" rel="noopener noreferrer"&gt;Semantic UI&lt;/a&gt;.  However, Bootstrap is more popular and widely accessible through tutorials.&lt;/p&gt;
&lt;h4&gt;
  
  
  Important Pieces
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://getbootstrap.com/css/#buttons" rel="noopener noreferrer"&gt;Buttons&lt;/a&gt; require that they be identified first by a "btn" class followed by a second specific class.  &lt;/p&gt;

&lt;p&gt;There are seven specific classes:&lt;/p&gt;

&lt;p&gt;Default (standard white button): btn-default&lt;/p&gt;

&lt;p&gt;Primary (provides extra visual weight; set to be the primary action in a set of buttons): btn-primary&lt;/p&gt;

&lt;p&gt;Success (indicates successful or positive action): btn-success&lt;/p&gt;

&lt;p&gt;Info (contextual button for informational alerts): btn-info&lt;/p&gt;

&lt;p&gt;Warning (indicates caution should be taken): btn-warning&lt;/p&gt;

&lt;p&gt;Danger (indicates a potentially dangerous action): btn-danger&lt;/p&gt;

&lt;p&gt;Link (deemphasizes the button to look like a link while behaving like a button): btn-link&lt;/p&gt;

&lt;p&gt;Buttons classes can be added to the &lt;code&gt;&amp;lt;a&amp;gt;, &amp;lt;button&amp;gt;, or &amp;lt;input&amp;gt;&lt;/code&gt; elements, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"btn btn-default"&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"#"&lt;/span&gt; &lt;span class="na"&gt;role=&lt;/span&gt;&lt;span class="s"&gt;"button"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Link&lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;button&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"btn btn-default"&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"submit"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Button&lt;span class="nt"&gt;&amp;lt;/button&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"btn btn-default"&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"button"&lt;/span&gt; &lt;span class="na"&gt;value=&lt;/span&gt;&lt;span class="s"&gt;"Input"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"btn btn-default"&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"submit"&lt;/span&gt; &lt;span class="na"&gt;value=&lt;/span&gt;&lt;span class="s"&gt;"Submit"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Button sizes can be reduced or increased by adding a third size class.&lt;/p&gt;

&lt;p&gt;Large: btn-lg&lt;/p&gt;

&lt;p&gt;Small: btn-sm&lt;/p&gt;

&lt;p&gt;Extra Small: btn-xs&lt;/p&gt;

&lt;p&gt;To make a button appear "active," add the "active" class:&lt;br&gt;
    &lt;code&gt;&amp;lt;button class="btn btn-success btn-xs active"&amp;gt;Text&amp;lt;/button&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To disable a button, add a "disabled" attribute and set its value to "disabled":&lt;br&gt;
    &lt;code&gt;&amp;lt;button class="btn btn-success btn-xs" disabled="disabled"&amp;gt;Text&amp;lt;/button&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://getbootstrap.com/components/#jumbotron" rel="noopener noreferrer"&gt;Jumbotron&lt;/a&gt; (class="jumbotron") extends the entire viewport to enlarge and showcase key content within.&lt;/p&gt;

&lt;p&gt;By default, the Jumbotron will extend across the entire width of the screen.  To prevent this behavior, place the &lt;code&gt;&amp;lt;div class="jumbotron"&amp;gt;&lt;/code&gt; within a &lt;code&gt;&amp;lt;div class="container"&amp;gt;&lt;/code&gt;, as the "container" class in Bootstrap will add padding and margins to center the Jumbotron.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://getbootstrap.com/css/#forms" rel="noopener noreferrer"&gt;Forms&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://getbootstrap.com/css/#forms-example" rel="noopener noreferrer"&gt;Basic Form&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Applying the class="form-group" attribute to all &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; elements in the form optimizes the spacing between the elements (e.g., between the username and password field).&lt;/p&gt;

&lt;p&gt;Applying the class="form-control" attribute to an &lt;code&gt;&amp;lt;input&amp;gt;&lt;/code&gt; element improves the style of the normal default appearance (adds rounded corners, padding, spacing, focus effects, etc.), but also makes changes to how the element behaves within the grid system.&lt;/p&gt;

&lt;p&gt;Applying the class="help-block" to a &lt;code&gt;&amp;lt;p&amp;gt;&lt;/code&gt; element modifies the text of a helpful hint to be more subtle and subdued in appearance.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://getbootstrap.com/css/#forms-inline" rel="noopener noreferrer"&gt;Inline Form&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A basic form will lay its contents by stacking them on top of each other.  However, by applying the class="form-inline" to your form (which doesn't necessarily have to be a &lt;code&gt;&amp;lt;form&amp;gt;&lt;/code&gt; element) will place its contents in a line from left to right.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://getbootstrap.com/components/#navbar" rel="noopener noreferrer"&gt;Navbar&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Navbars serve as navigation headers for an application or site.  Navbars must be placed within a &lt;code&gt;&amp;lt;nav&amp;gt;&lt;/code&gt; element, and, like buttons, require a general "navbar" class followed by a second specific class (typically "navbar-default", but may also be "navbar-inverse" for an inverted color scheme).&lt;/p&gt;

&lt;p&gt;A navbar may contain a "Brand" image (e.g., company name or logo) as the first object in the navbar.  This is constructed by creating a "navbar-header" and placing an anchored "navbar-brand" within the header (to add a link to the homepage, typically), and then an &lt;code&gt;&amp;lt;img&amp;gt;&lt;/code&gt; within the brand, if desired:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;nav&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"navbar navbar-default"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"navbar-header"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"navbar-brand"&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"#"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;img&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"#"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/nav&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The remaining content on the Left Side of the navbar should appear outside of the &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; containing the "navbar-header", and it should be placed in &lt;code&gt;&amp;lt;ul class="nav navbar-nav"&amp;gt;&lt;/code&gt;.  Each item within the navbar should be marked with &lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt; tags (and those should contain an &lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt; tag if a link is desired).&lt;/p&gt;

&lt;p&gt;NOTE: The &lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt; tags will function normally even if contained in a &lt;code&gt;&amp;lt;div&amp;gt; rather than &amp;lt;ul&amp;gt;&lt;/code&gt;; however, the &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; should be used for semantics.&lt;/p&gt;

&lt;p&gt;To add additional content to the Right Side of the navbar, use &lt;code&gt;&amp;lt;ul class="nav navbar-nav navbar-right"&amp;gt;&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;To ensure that the content on the right side does not press too squarely on the right edge of the browser, everything within the &lt;code&gt;&amp;lt;nav&amp;gt;&lt;/code&gt; should be placed within a &lt;code&gt;&amp;lt;div class="container"&amp;gt;&lt;/code&gt; (fixed width) or &lt;code&gt;&amp;lt;div class="container-fluid"&amp;gt;&lt;/code&gt; (full width).&lt;/p&gt;

&lt;p&gt;To get the full benefit out of a navbar (such as dynamic dropdown menus), you must install the Bootstrap JavaScript file in your HTML &lt;code&gt;&amp;lt;body&amp;gt;&lt;/code&gt;.  Like "bootstrap.css", you can either use the "bootstrap.js" file downloaded from Bootstrap, or you can use the following link:&lt;br&gt;
    &lt;code&gt;&amp;lt;script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"&amp;gt;&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;NOTE: Bootstrap's JavaScript requires &lt;a href="http://code.jquery.com/" rel="noopener noreferrer"&gt;jQuery&lt;/a&gt; to work, and its &lt;code&gt;&amp;lt;script&amp;gt;&lt;/code&gt; must be placed BEFORE Bootstrap's:&lt;br&gt;
    &lt;code&gt;&amp;lt;script  src="http://code.jquery.com/jquery-3.2.1.js" integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE=" crossorigin="anonymous"&amp;gt;&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To have items Collapse when the browser hits mobile size, place everything that you want to collapse inside &lt;code&gt;&amp;lt;div class="collapse navbar-collapse"&amp;gt;&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;To add the "hamburger" icon that provides a dropdown icon for the collapsed items, (1) change the above &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; to read &lt;code&gt;&amp;lt;div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"&amp;gt;&lt;/code&gt;, and (2) place the following &lt;code&gt;&amp;lt;button&amp;gt;&lt;/code&gt; within the "navbar-header":&lt;br&gt;
    &lt;code&gt;&amp;lt;button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"&amp;gt;&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"sr-only"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Toggle navigation&lt;span class="nt"&gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"icon-bar"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"icon-bar"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"icon-bar"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
 &lt;span class="nt"&gt;&amp;lt;/button&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The three "icon-bar" classes are responsible for making the three bars in the icon.&lt;/p&gt;

&lt;p&gt;The "data-target" attribute is responsible for showing/hiding the content when the icon is clicked.  The value of this attribute should be set to whatever &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; (by ID) you want to show/hide.&lt;/p&gt;

&lt;p&gt;To keep the navbar Fixed to Top, include the "navbar-fixed-top" class, and add a minimum of 50px  of padding to the top of the &lt;code&gt;&amp;lt;body&amp;gt;&lt;/code&gt; (as the navbar itself is 50px  high), although it may better to add a little more for extra space.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://getbootstrap.com/components/#glyphicons" rel="noopener noreferrer"&gt;Glyphicons&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To place icons, use the link above to find the class of icon you wish to use (e.g., an envelope icon), and insert it according to the following syntax:&lt;br&gt;
    &lt;code&gt;&amp;lt;span class="glyphicon glyphicon-envelope" aria-hidden="true"&amp;gt;&amp;lt;/span&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The icon &lt;code&gt;&amp;lt;span&amp;gt;&lt;/code&gt; should contain no text or child elements.&lt;/p&gt;

&lt;p&gt;The aria-hidden="true" attribute is used to hide decorative icons on assistive technologies (e.g., Screen Readers).  If the icon is not decorative and is intended to convey meaning, then that meaning can be added through by using &lt;code&gt;&amp;lt;span class="sr-only"&amp;gt;&lt;/code&gt;, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"alert alert-danger"&lt;/span&gt; &lt;span class="na"&gt;role=&lt;/span&gt;&lt;span class="s"&gt;"alert"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"glyphicon glyphicon-exclamation-sign"&lt;/span&gt; &lt;span class="na"&gt;aria-hidden=&lt;/span&gt;&lt;span class="s"&gt;"true"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"sr-only"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Error: Enter a valid email address&lt;span class="nt"&gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you're creating controls with no text (such as a &lt;code&gt;&amp;lt;button&amp;gt;&lt;/code&gt; that only contains an icon), you can add an "aria-label" attribute to the control and make its value be a description that will appear on screen readers.&lt;/p&gt;

&lt;p&gt;For additional icons, install &lt;a href="http://fontawesome.io/get-started/" rel="noopener noreferrer"&gt;Font Awesome&lt;/a&gt; by placing the entire directory into your project, and then inserting the following into your &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt;:&lt;br&gt;
    &lt;code&gt;&amp;lt;link rel="stylesheet" href="path/to/font-awesome/css/font-awesome.min.css"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://getbootstrap.com/css/#grid" rel="noopener noreferrer"&gt;The Grid System&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bootstrap includes a fluid grid system that appropriately scales up to 12 columns as the device or viewport size increases.  These 12 columns are contained within every instance of &lt;code&gt;&amp;lt;div class="row"&amp;gt;&lt;/code&gt;.  You can then place additional &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; elements within each row and divide them by the following syntax: &lt;code&gt;&amp;lt;div class="col-size-#"&amp;gt;&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;The "#" option determines how many columns (out of 12) the &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt;will occupy.  In the following example, the first row will have 3 evenly spaced &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; groups that are each 4 columns wide, and the second row will have 2 &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; groups, with the first being 9 columns in width and the second being 3 columns:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"container&amp;gt;
    &amp;lt;div class="&lt;/span&gt;&lt;span class="na"&gt;row&lt;/span&gt;&lt;span class="err"&gt;"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-md-4"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;First Symmetrical Group&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-md-4"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Second Symmetrical Group&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-md-4"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Third Symmetrical Group&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"row"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-md-9"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;First Asymmetrical Group&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-md-3"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Second Asymmetrical Group&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The "Size" option determines the width of the &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt;, which determines the "breaking point" at which the &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; elements in a single row will take up a full 12 columns and stack on top of each other, rather than appear side-by-side.&lt;/p&gt;

&lt;p&gt;Four sizes and breaking points:&lt;/p&gt;

&lt;p&gt;Extra Small ("col-xs-#") for mobile phones: Auto width.&lt;/p&gt;

&lt;p&gt;Small ("col-sm-#") for tablets: 750 pixels.&lt;/p&gt;

&lt;p&gt;Medium ("col-md-#") for smaller monitors: 970 pixels.&lt;/p&gt;

&lt;p&gt;Large ("col-lg-#") for larger monitors: 1170 pixels.&lt;/p&gt;

&lt;p&gt;Given the sizes above, if you were to have 4 &lt;code&gt;&amp;lt;div class="col-md-3"&amp;gt;&lt;/code&gt; elements, the 4 elements would appear side-by-side until the screen width dropped below 970 pixels, at which point all 4 would stack on top of each other.  If, however, you wanted tablet users (below 970 pixels) to see the first two elements appear side-by-side and the last two elements below, you would say: &lt;code&gt;&amp;lt;div class="col-md-3 col-sm-6"&amp;gt;&lt;/code&gt;.  &lt;/p&gt;

&lt;p&gt;This system also allows for Nesting additional "row" classes within other existing grid elements, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"container"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"row"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-md-3 col-sm-6"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
          &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"row"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
             &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-sm-6"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;First half of Group "1"&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
             &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-sm-6"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Second half of Group "1"&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
          &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-md-3 col-sm-6"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Group "2"&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-md-3 col-sm-6"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Group "3"&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-md-3 col-sm-6"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Group "4"&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Notes for Image Galleries:&lt;/p&gt;

&lt;p&gt;Visit &lt;a href="https://unsplash.com/" rel="noopener noreferrer"&gt;Unsplash&lt;/a&gt; for free high-quality images.&lt;/p&gt;

&lt;p&gt;In order for images to be appropriately sized within its grid, a quick method is to nest the image within the "thumbnail" class, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"col-lg-4 col-md-6 col-sm-6"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"thumbnail"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
       &lt;span class="nt"&gt;&amp;lt;img&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"files/01.jpg"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;\
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;NOTE:&lt;/p&gt;

&lt;p&gt;If you're looking for Pinterest-like presentation of thumbnails of varying heights and/or widths, you'll need to use a third-party plugin such as &lt;a href="http://masonry.desandro.com/" rel="noopener noreferrer"&gt;Masonry&lt;/a&gt;, &lt;a href="http://isotope.metafizzy.co/" rel="noopener noreferrer"&gt;Isotope&lt;/a&gt;, or &lt;a href="http://salvattore.com/" rel="noopener noreferrer"&gt;Salvattore&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you don't mind the images being of varying heights, but want to get rid of the white space bug, then see &lt;a href="https://www.udemy.com/the-web-developer-bootcamp/learn/v4/questions/1989586" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you want to crop all of the images to the same size, then see an example of this &lt;a href="https://codepen.io/nax3t/pen/MJwpdb" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;⬆ Back to Top&lt;/p&gt;




&lt;h3&gt;
  
  
  JS Basics &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript" rel="noopener noreferrer"&gt;JavaScript&lt;/a&gt;  (Basic) &lt;/p&gt;

&lt;p&gt;
  Intro - For beginners
  &lt;h2&gt;
  
  
  What is JS (Javascript)
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;JavaScript is a scripting or programming language that allows you to implement complex features on web pages — every time a web page does more than just sit there and display static information for you to look at — displaying timely content updates, interactive maps, animated 2D/3D graphics, scrolling video jukeboxes, etc. — you can bet that JavaScript is probably involved. It is the third layer of the layer cake of standard web technologies. &lt;a href="https://developer.mozilla.org/en-US/docs/Learn/JavaScript/First_steps/What_is_JavaScript" rel="noopener noreferrer"&gt;MDN&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuggvpcrg4eolng5deqkc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuggvpcrg4eolng5deqkc.png" alt="image" width="442" height="429"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;
  
  
  What it used for?
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;To put things simply, JavaScript is an object orient programming language designed to make web development easier and more attractive. In most cases, JavaScript is used to create responsive, interactive elements for web pages, enhancing the user experience. Things like menus, animations, video players, interactive maps, and even simple in-browser games can be created quickly and easily with JavaScript. JavaScript is one of the most popular programming languages in the world. &lt;a href="https://www.bitdegree.org/tutorials/what-is-javascript-used-for/#:~:text=To%20put%20things%20simply%2C%20JavaScript,pages%2C%20enhancing%20the%20user%20experience." rel="noopener noreferrer"&gt;BitDegree - What Is JavaScript Used For And Why You Should Learn It&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;
  
  
  Hello World In Javascript:
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;alert&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello World&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Output&lt;/span&gt; &lt;span class="nx"&gt;data&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;an&lt;/span&gt; &lt;span class="nx"&gt;alert&lt;/span&gt; &lt;span class="nx"&gt;box&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;browser&lt;/span&gt; &lt;span class="nb"&gt;window&lt;/span&gt;
&lt;span class="nf"&gt;confirm&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello World&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Opens&lt;/span&gt; &lt;span class="nx"&gt;up&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;yes&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;no&lt;/span&gt; &lt;span class="nx"&gt;dialog&lt;/span&gt; &lt;span class="nx"&gt;and&lt;/span&gt; &lt;span class="nx"&gt;returns&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt; &lt;span class="nx"&gt;depending&lt;/span&gt; &lt;span class="nx"&gt;on&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt; &lt;span class="nx"&gt;click&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello World&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Writes&lt;/span&gt; &lt;span class="nx"&gt;information&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;browser&lt;/span&gt; &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;good&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nx"&gt;debugging&lt;/span&gt; &lt;span class="nx"&gt;purposes&lt;/span&gt;
&lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;write&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello World&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Write&lt;/span&gt; &lt;span class="nx"&gt;directly&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;HTML&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;
&lt;span class="nf"&gt;prompt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Remember the like!&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Creates&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;dialogue&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt; &lt;span class="nx"&gt;input&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Resources to learn it:
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide" rel="noopener noreferrer"&gt;Mozilla’s JavaScript Guide&lt;/a&gt;&lt;br&gt;
JavaScript track on Codecademy: Interactive tutorials for beginners.&lt;br&gt;
JavaScript for Cats by Max Ogden&lt;br&gt;
Eloquent JavaScript by Marijn Haverbeke&lt;br&gt;
Wikibooks’ JavaScript book&lt;br&gt;
JavaScript Lectures by Douglas Crockford&lt;br&gt;
You Don't Know JS - Possibly the best book written on modern JavaScript, completely readable online for free, or can be bought to support the author.&lt;br&gt;
braziljs/js-the-right-way - An easy-to-read, quick reference for JS best practices, accepted coding standards, and links around the Web.&lt;br&gt;
JSbooks - Directory of free JavaScript ebooks.&lt;br&gt;
Superhero.js - A collection of resources about creating, testing and maintaining a large JavaScript code base.&lt;br&gt;
SJSJ - Simplified JavaScript Jargon is a community-driven attempt at explaining the loads of buzzwords making the current JavaScript ecosystem in a few simple words.&lt;br&gt;
How to Write an Open Source JavaScript Library - A comprehensive guide through a set of steps to publish a JavaScript open source library.&lt;br&gt;
JavaScript Tutorials - Learn Javascript online from a diverse range of user ranked online tutorials.&lt;br&gt;
Functional-Light JavaScript - Pragmatic, balanced FP in JavaScript.&lt;br&gt;
Clean Code JavaScript - Clean Code concepts adapted for JavaScript.&lt;br&gt;
&lt;a href="https://github.com/ShinobiWPS/awesome-javascript#worth-reading" rel="noopener noreferrer"&gt;List at GitHub - Awesome Javascript - By Alexandru Gherasim&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  At Reddit - &lt;a href="https://www.reddit.com/r/javascript/comments/6mlc9d/what_10_things_should_a_serious_javascript/" rel="noopener noreferrer"&gt;What 10 Things Should a Serious Javascript Developer Know Right Now?&lt;/a&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Scope.&lt;/strong&gt; If you don't understand this intimately then you aren't that serious about this language. This is the number one point intentionally and I cannot stress it enough.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Architecture.&lt;/strong&gt; You don't have to be a master software architect, but if you cannot perform some basic planning and put pieces together without massive layers of tooling you are an imposter. Expecting frameworks and other tools to simply do it for you isn't very impressive.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;DOM.&lt;/strong&gt; It is very common to see developers hiding from the DOM by layers of abstractions and other stupid crap. querySelectors are great, but are also 2800x slower than the standard DOM methods. That isn't trivial. These methods are super simple, so there is no valid excuse for developers fumbling over this or hiding in fear. &lt;a href="http://prettydiff.com/guide/unrelated_dom.xhtml" rel="noopener noreferrer"&gt;http://prettydiff.com/guide/unrelated_dom.xhtml&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Node.js&lt;/strong&gt; If you are a serious developer should have a pretty solid grasp of how to walk the file system. You should understand how to conveniently read files as text or less conveniently read files as bit for bit binary buffers.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Timing and asynchronous operations.&lt;/strong&gt; Events, timers, network requests are all asynchronous and separate from each other and exist both in Node and in the browser. You have to be able to understand how to work with callbacks or promises.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Accessibility.&lt;/strong&gt; The interactions imposed by JavaScript can present accessibility barriers. A serious JavaScript developer is already familiar with WCAG 2.0 and knows how to work within its recommendations or when to push back on violating business requirements.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Security.&lt;/strong&gt; You need to have at least a basic understanding of security violations, security controls, and privacy. You don't need to be a CISSP, but you need to be able to supply recommendations and avoid obvious failures. If you cannot get this right in the most basic sense you aren't a serious developer.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Data structures.&lt;/strong&gt; You need to understand how to organize data in a way that allows the fastest possible execution without compromising maintenance. This is something that is learned through academic study and repeated experience writing applications.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Presentation and semantics.&lt;/strong&gt; You really need to have a basic understanding how to properly organize the content your users will consume and how to present in a consumable way efficiently. This is something almost completely learned from experience only. You might think CSS and HTML are simple skills that can be picked up when needed, but you would be absolutely wrong.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Knowing when to avoid the bullshit.&lt;/strong&gt; Many developers lack the years of experience to be confident in their performance.... so some of these developers will try to fake it. Don't be an imposter, because everybody will see straight through it. Hoping mountains of abstractions, tooling, frameworks, compilers, and other bullshit will save you just bogs down your application and screws over your teammates. If you aren't confident then be honest about that and seek mentorship or get involved with open source software outside of work.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F727auzola6gykhln320v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F727auzola6gykhln320v.png" alt="image" width="800" height="371"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.mindmeister.com/283065198/getting-started-with-javascript?fullscreen=1" rel="noopener noreferrer"&gt;Source&lt;/a&gt; &lt;/p&gt;



&lt;/p&gt;

&lt;p&gt;Articles: &lt;a href="https://dev.to/worldindev/400-javascript-interview-questions-with-answers-2fcj"&gt;400+ JavaScript Interview Questions 🎓 With Answers&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/worldindev/200-js-resources-to-master-programming-3aj6"&gt;250+ JS Resources to Master Programming 💥 Cheat Sheet&lt;/a&gt;&lt;a href="https://dev.to/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k"&gt;Projects ideas to become a javascript master 🚀&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Writing a JavaScript File
&lt;/h4&gt;

&lt;p&gt;JavaScript must be saved to a file ending in the ".js" extension.&lt;/p&gt;

&lt;p&gt;To add the JS file to your website, you must use a &lt;code&gt;&amp;lt;script&amp;gt;&lt;/code&gt; tag in your HTML file: &lt;br&gt;
    &lt;code&gt;&amp;lt;script src="filename.js"&amp;gt;&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;NOTE: Use double slashes "//" to make unexecuted Comments within your JS file (similar to comments that can be included in HTML and CSS).&lt;/p&gt;
&lt;h4&gt;
  
  
  The JavaScript Console
&lt;/h4&gt;

&lt;p&gt;Accessible on the "Console" tab in "Developer Tools" in Chrome (accessed by F12).&lt;/p&gt;

&lt;p&gt;Just as with using the Developer Tools for testing and understanding how your HTML/CSS work (rather than actually writing your HTML/CSS), the JS console serves the same function.&lt;/p&gt;

&lt;p&gt;TIP: Pressing the "up" arrow in the console will bring back previously lines of code, so you do not have to retype it.&lt;/p&gt;
&lt;h4&gt;
  
  
  Primitives
&lt;/h4&gt;

&lt;p&gt;There are 5 low-level, basic types of data used in JS:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Numbers&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Whole, fractional, or negative numbers are all treated the same way.&lt;/p&gt;

&lt;p&gt;In the console, the browser can perform mathematical processes in the same manner as a calculator by simply typing, e.g., "4 + 10" and pressing "Enter" to have the result returned to you.&lt;/p&gt;

&lt;p&gt;One function known as Modulo (a.k.a., the Remainder Operator) uses the "%" placed between two numbers (like a "+" for addition), then it will divide the second number into the first number as many times as it can as a whole number, and then gives you the remainder as a result, e.g.: &lt;br&gt;
    10 % 3 = 1 &lt;br&gt;
    20 % 5 = 0 &lt;br&gt;
    15 % 11 = 4&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Strings&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;All of the text within one pair of Quotation Marks constitutes one string.  This is also true of numbers that appear within quotes.&lt;/p&gt;

&lt;p&gt;You can use either double quotes ("), single quotes (') but the pair must match or an error will result. &lt;/p&gt;

&lt;p&gt;IMPORTANT:  If you want to have a string include Newlines (i.e., the character that causes a line break to occur when you press Enter), then you must use the Backtick.  Other types of strings will remain on one line unless you use special escape characters (described below).&lt;/p&gt;

&lt;p&gt;Backticks can also be used in conjunction with ${} to Embed Values within a string, e.g.: &lt;br&gt;
    &lt;code&gt;Half of 100 is ${100/2}.&lt;/code&gt; &lt;br&gt;
    ...translates to: &lt;br&gt;
    "Half of 100 is 50."&lt;/p&gt;

&lt;p&gt;BUT NOTE: You can have a single quote within a pair of double quotes (e.g., if you are typing a word has an apostrophe), and it will still be valid.&lt;/p&gt;
&lt;h6&gt;
  
  
  Concatenation:
&lt;/h6&gt;

&lt;p&gt;Strings can be added together formulaically to create a single string, e.g.: &lt;br&gt;
    'Charlie ' + 'Brown' = 'Charlie Brown'&lt;/p&gt;
&lt;h5&gt;
  
  
  Escape Characters:
&lt;/h5&gt;

&lt;p&gt;Escape characters all start with a backslash (" "), and they are used to "escape" out of the string to write special characters that would not otherwise be valid within the string.  For example, if you want the string to say, "She said "Goodbye!"" without using single quotes around "Goodbye!", then say: &lt;br&gt;
    'She said  "Goodbye! "'&lt;/p&gt;

&lt;p&gt;The following link includes a &lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String" rel="noopener noreferrer"&gt;List of Special Escape Notations&lt;/a&gt;.&lt;/p&gt;
&lt;h5&gt;
  
  
  Length Property:
&lt;/h5&gt;

&lt;p&gt;Every string has a "length property," which refers to the number of characters (including spaces, numbers, etc.) within that string.  For example, by typing the following, the console will tell you that the string "hello" is 5 characters long: &lt;br&gt;
    'hello'.length;&lt;/p&gt;

&lt;p&gt;You can also access individual characters by using Brackets, and placing a number (beginning with zero) within the brackets that corresponds to the position in the string in which the character appears (i.e., its "Index").  For example, JS will access the first letter in the string "hello" and return "h" if you say: &lt;br&gt;
    'hello'[0];&lt;/p&gt;

&lt;p&gt;TIP: Rather than manually counting each character, you can determine the index number of the very last character by using ".length" and subtracting by 1.&lt;/p&gt;

&lt;p&gt;NOTE:  To determine if something is a number or a string, you can use: console.log(typeof var);&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Booleans&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Only two options: true or false&lt;/p&gt;

&lt;p&gt;TIP: To invert the value of a variable from true to false or vice versa, simply use the NOT ("!") operator, e.g.: &lt;br&gt;
    var x = true;  // x will return true &lt;br&gt;
    x = !x;  // x will return false &lt;br&gt;
    x = !x;  // x will return true&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Null &amp;amp; Undefined&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;These are actually values rather than a true category (no multiple types of "null" or "undefined").&lt;/p&gt;

&lt;p&gt;Undefined variables are those which are declared but not initialized, whereas null variables are "explicitly nothing."&lt;/p&gt;

&lt;p&gt;For example, if you run "var age;" without a value, then JavaScript is simply told to make some space for something called "age" but without storing anything there.  If you then ask the console to give you a return on "age", it will come back "undefined."  If you ask the console to return something that doesn't exist at all, like "color," then it will return an error.&lt;/p&gt;

&lt;p&gt;By contrast, if you are making a game and making a string for the name of the current player as "var currentPlayer = 'charlie';" and that player dies (game over), you would set "currentPlayer = null;" to make it clear that there is no longer any "current player."&lt;/p&gt;
&lt;h4&gt;
  
  
  Variables
&lt;/h4&gt;

&lt;p&gt;A variable is simply a named container with data stored within.  Variables are structured according to the following syntax:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;yourVariableName&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;yourValue&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Rusty&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;secretNumber&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;73&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;isAdorable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;NOTE: The naming convention used in JS relies on a system of capitalization known as camelCase, in which the first word of the name starts with a lower-case letter, and subsequent words begin with an upper-case letter.&lt;/p&gt;

&lt;p&gt;The name "variable" means that the data stored within that container can vary.  For instance, you can begin by setting the following in the console: &lt;br&gt;
    &lt;code&gt;var name = 'Rusty';&lt;/code&gt;&lt;br&gt;
    However, if you later decide that you want to change the name, then you can simply state "name = 'Tater';" which will result in the console returning the value "Tater" when you simply type "name" into the console.&lt;/p&gt;

&lt;p&gt;Math can also be performed with the name of a variable that has a number for its value.  For example, if you set a variable with the name of "num" and set its value to 73, you can type "num + 7" to receive the result of 80.&lt;/p&gt;
&lt;h4&gt;
  
  
  Useful Built-In Methods
&lt;/h4&gt;
&lt;h5&gt;
  
  
  Alert
&lt;/h5&gt;

&lt;p&gt;Creates a pop-up message for the user when running the following: &lt;br&gt;
    alert('hello world');&lt;/p&gt;
&lt;h5&gt;
  
  
  Console.log
&lt;/h5&gt;

&lt;p&gt;"Prints" data to the JavaScript console (so only those viewing the console can see the text/data): &lt;br&gt;
    console.log('hello world');&lt;/p&gt;
&lt;h5&gt;
  
  
  Prompt
&lt;/h5&gt;

&lt;p&gt;Allows the browser to get input from a user via a pop-up message with a text field in which the user can input information: &lt;br&gt;
    prompt('What is your name?');&lt;/p&gt;

&lt;p&gt;The information obtained through Prompt can also be stored as a variable for later use.  For example, the browser may run the following operation: &lt;br&gt;
    var userName = prompt('What is your name?'); &lt;br&gt;
    Then after the user inputs his name, that name can be recalled by running "username".&lt;/p&gt;

&lt;p&gt;NOTE: When a number is entered into a prompt by the user, it is stored as a string (e.g., 7 becomes "7").  To recall the stored string as a number, use the following syntax: Number(storedString);&lt;/p&gt;

&lt;p&gt;If the prompt intends that the answer only be an answer and not contain any text, it would be most efficient to have the starting variable be something to the effect of:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;numberAnswer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;Number&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;prompt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Enter a number.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt; 
    &lt;span class="nx"&gt;or&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;answer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;prompt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Enter a number.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;numberAnswer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;Number&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;answer&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ALSO NOTE: Alternatively, you may use the Unary Plus operator ("+") to convert a string to a number: +storedString;&lt;/p&gt;

&lt;p&gt;SEE ALSO: &lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseFloat" rel="noopener noreferrer"&gt;parseFloat()&lt;/a&gt;&lt;/p&gt;

&lt;h5&gt;
  
  
  Clear
&lt;/h5&gt;

&lt;p&gt;Run "clear()" to clear the console.&lt;/p&gt;

&lt;h4&gt;
  
  
  Boolean Logic
&lt;/h4&gt;

&lt;p&gt;Boolean logic relies upon Comparison Operators in determining whether a particular result should be labeled as "true" or "false".  For example, assuming the value of "x = 5", then the following operators would produce the following results:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe87cv6a090quwturz43l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe87cv6a090quwturz43l.png" alt="image" width="707" height="248"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Double Equals performs Type Coercion, which takes the two numbers, strings, or variables and tries to turn them into a similar type to compare them. Triple Equals, by contrast, does not perform type coercion, so a pure number 5 will not be treated the same way as a string containing the number "5".  &lt;/p&gt;

&lt;p&gt;As a general rule, triple equals should always be preferred, as it is more specific than double equals.  For example, if you were to run "var y = null;" and then "y == undefined", the console would return a value of "true" because null and undefined are similar, even though the two are not technically true equivalents.&lt;/p&gt;

&lt;p&gt;Additional quirks in JS demonstrating the anomalies that arise when using double equals:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;    &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;1&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="c1"&gt;// true &lt;/span&gt;
    &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt; &lt;span class="c1"&gt;// true &lt;/span&gt;
    &lt;span class="kc"&gt;null&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="kc"&gt;undefined&lt;/span&gt;  &lt;span class="c1"&gt;// true &lt;/span&gt;
    &lt;span class="kc"&gt;NaN&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="kc"&gt;NaN&lt;/span&gt; &lt;span class="c1"&gt;// false ("NaN" stands for "not a number")&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Logical Operators
&lt;/h4&gt;

&lt;p&gt;Logical operators are used to "chain together" expressions of Boolean logic.  For example, where "x = 5", and "y = 9", you would receive the following results:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl8pxcqq39oolg4nyasss.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl8pxcqq39oolg4nyasss.png" alt="image" width="708" height="115"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;AND requires both sides of the equation to be true to return a result of "true."  On the other hand, OR only requires one or the other to be true to return a result of "true."&lt;/p&gt;

&lt;p&gt;NOT negates the truth (or falsity) of whatever is contained in its parentheses.  In the example above, the parenthetical statement says that "5 = 9", which is false.  Adding the NOT operator is tantamount to saying, "It is NOT TRUE that '5 = 9' is true," which is ultimately a true statement, thereby returning a result of "true."&lt;/p&gt;

&lt;p&gt;The following values are treated as being "Falsy" in JS (whereas everything else is considered "Truthy"): &lt;br&gt;
    false (NOTE: This false is not within a string.  Any text within a string is "truthy.") &lt;br&gt;
    0 &lt;br&gt;
    "" &lt;br&gt;
    null &lt;br&gt;
    undefined &lt;br&gt;
    NaN&lt;/p&gt;
&lt;h4&gt;
  
  
  Conditionals
&lt;/h4&gt;

&lt;p&gt;Conditionals are the means by which you add "decisions" to your code.  For example, when you log in to a website, there is code that checks the password you type in with the password stored on the site's server (and you are logged in if they match, and given an error message if they do not match).&lt;/p&gt;
&lt;h4&gt;
  
  
  Three Key Conditionals:
&lt;/h4&gt;

&lt;p&gt;If&lt;/p&gt;

&lt;p&gt;"If you are younger than 18, you cannot enter the venue":&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;    &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;18&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Sorry, you are not old enough to enter the venue.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Else If always follows an "if" statement as a secondary condition, as it will only run if the preceding "if" statement is false.&lt;/p&gt;

&lt;p&gt;"If you are between 18 and 21, you can enter but cannot drink":&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;21&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;You can enter, but cannot drink.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Else will only run as a last-ditch effort when all preceding "if" and any subsequent "else if" statements are false.&lt;/p&gt;

&lt;p&gt;"Otherwise, you can enter and drink":&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Come on in.  You can drink.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Ternary Operator
&lt;/h4&gt;

&lt;p&gt;The ternary operator is a shorthand method of creating a simple "if/else" conditional by the following syntax: &lt;br&gt;
    &lt;code&gt;condition ? ifStatement : elseStatement&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;For example, to perform an age check, you could state: &lt;br&gt;
    &lt;code&gt;age &amp;gt;= 18 ? console.log('You can enter.') : console.log('You must leave.');&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Loops
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/while" rel="noopener noreferrer"&gt;While Loops&lt;/a&gt; repeat code while a condition is true.  They are very similar to if statements, except they repeat a given code block instead of just running it once:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;while &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;someCondition&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="c1"&gt;// run some code &lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For example, to have the console print numbers 1-5, you would say:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;count&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="k"&gt;while &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
    &lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;NOTE: Using "++" will add a value of 1, but you can add more value, for example, 4, by using "+= 4".  For subtracting, just use a "-" sign instead of a "+" sign.&lt;/p&gt;

&lt;p&gt;If you want the user to enter a certain phrase into a prompt, but do not need exact specificity (only that the user provide the phrase somewhere in the response to the prompt), then you can use the Index Of method.  This method returns the first index (starting at 0) at which a given element can be found in the array (in this case, the user's response), or -1 if it is not present.&lt;/p&gt;

&lt;p&gt;For example, if a prompt is set to loop until the user types "yes" (variable named "answer"), and the user instead types "hell yes",  then running answer.indexOf('yes') will return a result of 5, because the phrase "yes" begins at index 5 of the user's answer of "hell yes".  If the user typed "yes sir", then the result would be 0, because the phrase "yes" begins at index 0.  If the user fails to include the phrase "yes" anywhere in his response, then a result of -1 will be returned, due to the fact that the phrase "yes" appears nowhere in the user's answer.  Therefore, to make a prompt loop until the user types the word "yes" (and thereby returning a positive index to terminate the loop), the following expression may be used:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;answer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;prompt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Are we there yet?&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="k"&gt;while &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;answer&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;indexOf&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;yes&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;answer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;prompt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Are we there yet?&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nf"&gt;alert&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Yay! We made it!&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;SEE ALSO: &lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/do...while" rel="noopener noreferrer"&gt;Do...While Loops&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Infinite Loops occur when the terminating condition in a loop is never false.  For example, the code below will print 0 forever because "count" is never incremented:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;count&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="k"&gt;while &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for" rel="noopener noreferrer"&gt;For Loops&lt;/a&gt; operate similarly to while loops, but with a different syntax.  Most significantly, the variable that is set to initialize the for loop is typically only meant to exist within the confines of that particular for loop:&lt;/p&gt;

&lt;p&gt;Syntax:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;init&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;step&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="c1"&gt;// run some code &lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;"Init" (for "initialize") declares a variable and sets it to some initial value at the start of the loop, "Condition" states when this loop should keep running (for as long as the condition returns "true"), and "Step" states what should be done at the end of every iteration.&lt;/p&gt;

&lt;p&gt;Example of how to print numbers 1-5 with a for loop:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This statement "initializes" by setting "i" as 1, and provides that "i" will be printed to the console and then increased by an increment of 1 for as long as "i" is less than 6.&lt;/p&gt;

&lt;p&gt;Example of how to print each character in the world "hello":&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hello&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;]);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This statement initializes by setting "i" as 0, and provides that the corresponding index of "hello" (as defined by the number at which "i" is currently set) will be printed to the console and then increased by an increment of 1 for as long as the numerical value of "i" is less than the numerical length of the "str" variable (in this case, the word "hello").&lt;/p&gt;

&lt;p&gt;SEE ALSO: &lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...in" rel="noopener noreferrer"&gt;For...In Loops&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Functions" rel="noopener noreferrer"&gt;Functions&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Functions allow you to wrap bits of code up (with a suggested limit of 20 lines) into reusable packages.  They function by first "declaring" a function, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;doSomething&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;HELLO WORLD&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...and then "calling" the function as many times you want, e.g.: 
doSomething(); 
doSomething(); 
doSomething(); 
doSomething();
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;NOTE: It is necessary to include the empty parentheses after "doSomething" to actually Execute its code; otherwise, the console will simply spit the code back out for you to see in its entirety (i.e., give you the value of "doSomething").&lt;/p&gt;

&lt;p&gt;Another Syntax:  As an alternative to a Function Declaration, you can also use a Function Expression:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;doSomething&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;HELLO WORLD&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;BUT NOTE: If the value of doSomething is modified, the function is lost. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments" rel="noopener noreferrer"&gt;Arguments&lt;/a&gt; are how we can write functions that take inputs.  Rather than using empty parentheses, you insert the name of an argument within the parentheses following the function name.&lt;/p&gt;

&lt;p&gt;For example, in order to create a function that can dynamically return the square of any numerical input, you would state:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;square&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;num&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;num&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;num&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...and then "Call" square with whatever value you "pass in" (i.e., input), e.g.: 
square(10);  // prints 100 
square(4);  // prints 16 
square(3);  // prints 9
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Functions can have as many arguments as needed and can generally be given any name.  Simply separate the arguments with commas.  For example, to calculate the area of a rectangle, you must multiply length and width:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;area&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;width&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;width&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...and then call the function, e.g.: 
area(2, 4)  // prints 8
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;NOTE: If you want a function to have &lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Default_parameters" rel="noopener noreferrer"&gt;Default Parameters&lt;/a&gt; in the event the user does not specify a value, use the following syntax:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;area&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;width&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;400&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;width&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Other examples of useful functions include (1) being able to add or subtract from a player's score during a game (by inserting a positive or negative number as an argument); or (2) checking a user's login credentials by making their e-mail and password into two arguments, and then running an If statement to determine if they match correctly, or else return an error.&lt;/p&gt;

&lt;p&gt;NOTE: All functions have an &lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments" rel="noopener noreferrer"&gt;Arguments Object&lt;/a&gt;, which is an Array-Like Object that can be used to access the arguments in a manner similar to accessing an array item.  For example, if you have the following function...&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;logNumbers&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;c&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;  &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;]);&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;]);&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;]);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...the console will print the following upon executing logNumbers(2, 4, 6): 
2 
4 
6
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;ALSO NOTE: The arguments object can be useful for constructing functions in which a varied number of arguments may be passed.  For example, if you want to create a function that will return the sum of any set of numbers that have been passed as arguments, you could say:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;addNumbers&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;sum&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nx"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;sum&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="nx"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;sum&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  The Return Keyword
&lt;/h4&gt;

&lt;p&gt;Every function returns something, but if you don't tell it what to return, it just returns "undefined."  In previous examples, functions have been used to print to the console, which is always an undefined return and cannot be used for anything.  For example, in the "square()" function above, if you ran square(4), the console would print 16, but it would also return "undefined".  Additionally, if you ran... &lt;br&gt;
    '4 squared is: ' + square(4); &lt;br&gt;
    ...it would return: '4 squared is: undefined' rather than '4 squared is: 16'.  That is because the return keyword was not used in the original function.  Instead, you must state:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;square&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;num&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;num&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;num&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The use of the return keyword in this example also provides the additional benefit of allowing the returned result to be stored as a variable.  For example, if you were to next run var result = square(104), then you would receive the returned value of 10816 after calling "result".&lt;/p&gt;

&lt;p&gt;For another example of how the return keyword allows you to capture a returned value in a variable, consider this function which capitalizes the first character in a string:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;capitalize&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;charAt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;toUpperCase&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;slice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is a functioned named "capitalize" that takes an argument named "str", converts the first character (at index 0) of "str" to upper case, and then adds that first character to the beginning of the remaining letters in "str" beginning at the "slice" that starts at index 1 (the second character).  If you run the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;city&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;paris&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;capital&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;capitalize&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;city&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...then you would receive an output of "Paris" upon calling "capital", because the capitalize() function performed its return on the argument "str" (in the form of the substituted variable of "city").
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;IMPORTANT: Once a return keyword is triggered, it will STOP THE EXECUTION OF A FUNCTION.  Therefore, if a function includes an if statement, such as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;capitalize&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;typeof&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;number&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;That's not a string.&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;charAt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;toUpperCase&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;slice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...if the user inputs a number rather than a word to the "str" argument, he will receive a return of "That's not a string.", and there will be no further execution of the second return statement.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Higher Order Functions are functions into which another function can be "Passed" as an argument.  For example, JS includes a built-in function called setInterval().  Within the parentheses of this function, you first place the name of another function that you want setInterval() to run, and then follow that with the interval (in milliseconds) that the script should execute until terminated.  Thus, if you want to have another function (which has already been previously set) run every second, you would state: &lt;br&gt;
&lt;code&gt;setInterval(anotherFunction, 1000);&lt;/code&gt;&lt;br&gt;
    Upon executing this statement, setInterval() will run anotherFunction() every 1000 milliseconds.&lt;/p&gt;

&lt;p&gt;NOTE: When the example above is executed, it will return a number (e.g., 661) in the console.  To stop the function from running, simply run clearInterval(661).&lt;/p&gt;

&lt;p&gt;ALSO NOTE: If, in the above example, you want a function to run every second, but you don't want to name that function ahead of time, you can insert an Anonymous Function:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;setInterval&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="c1"&gt;// code that you want to run every second; &lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Scope
&lt;/h4&gt;

&lt;p&gt;Scope refers to the context in which JavaScript is being executed (i.e., which properties and variables are "visible" within a particular function, yet are excluded by or different in another function).  For example, if you declare the following function:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;getNumber&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...the console will print 40 if you call the function.  However, if you simply call "x", then the console will return an error saying "x" is undefined.  This is because the scope in which "x" exists in the function differs from the "Global" scope, where "x" does not exist.  Conversely, if you were to later define "x" as a variable with a value in the global scope, and then run the function, the function will still print 40 notwithstanding the value of "x" in the global scope.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;HOWEVER:  If you were to have set "var x = 40;" in the global scope, and then created the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;getNumber&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...the Console will still print 40.  This is because when a variable is defined outside of a function, you still have access to it inside of that function AS LONG AS the interior of the function does not redefine that variable.  In other words, a more-specific "child" scope is governed by values set in the "parent" scope unless otherwise stated.  The converse, however, is not true, and the parent scope will not be governed by anything set in the child scope.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;BUT NOTE:  If the variable was set FIRST in the parent scope, then directly modified in the function, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;getNumber&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;80&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...then simply calling "x" in the console will print a value of 80.  This is because the function is not declaring a "new" variable "x" within itself; rather, it recognized that there was already a variable "x" existing outside of itself and redefined that variable externally while incorporating the redefined value internally. HOWEVER, had the function stated "var  x = 80;", then the function would have created its own "x" as an internal variable, and calling "x" globally would print 40.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array" rel="noopener noreferrer"&gt;Arrays&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Basics 
&lt;/h4&gt;

&lt;p&gt;Arrays are high-level data structures (ways of holding information using JS) containing lists of data.  For example, rather than making four "friend" variables:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;friend1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mac&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;friend2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Dennis&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;friend3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Charlie&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;friend4&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Dee&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...you could use an array by making a comma-separated list, like so: 
`var friends = ['Mac', 'Dennis', 'Charlie', 'Dee'];`
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Arrays are indexed starting at 0 (just like characters in a string).  The index method is used to get data out of the array, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;friends&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;  &lt;span class="c1"&gt;// "Mac"&lt;/span&gt;
&lt;span class="nx"&gt;friends&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt; &amp;lt;3 &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;friends&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;  &lt;span class="c1"&gt;// "Dennis &amp;lt;3 Charlie"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Arrays are useful in that they can be updated by simply stating, for example: &lt;br&gt;
    &lt;code&gt;friends[0] = 'Frank';&lt;/code&gt;&lt;br&gt;
    ...and all lines of code that would have otherwise produced "Mac" now say "Frank".&lt;/p&gt;

&lt;p&gt;Arrays are also useful in that new data can be added to them without modifying the original line of "var friends ..."  Rather, you can simply assign a new value/string (or any other data, including "true," "null," or even other arrays) to the next available index, and it will be added to the array, e.g.: &lt;br&gt;
    &lt;code&gt;friends[4] = 'Cricket';&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To initialize an array without yet adding data to the array, you can simply state: &lt;br&gt;
    &lt;code&gt;var friends = [ ];&lt;/code&gt;&lt;br&gt;
    ...or... &lt;br&gt;
    &lt;code&gt;var friends = new Array();&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Arrays also have a length property that can be called by using ".length", e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;friends&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;  &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Frank&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Dennis&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Charlie&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Dee&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Cricket&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
    &lt;span class="nx"&gt;friends&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;  &lt;span class="c1"&gt;// returns 5 (because there are 5 friend values)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Arrays can be nested within arrays like so:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;friendGroups&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; 
    &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Friend 1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Friend 2&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt; 
    &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Friend A&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Friend B&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; 
    &lt;span class="p"&gt;];&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;NOTE: When arrays are nested, you can call a specific index within a nested array like so : &lt;br&gt;
    &lt;code&gt;console.log(friendGroups[1][0]);  // "Friend A" (takes the second &lt;br&gt;
    // index of the first array, and the &lt;br&gt;
    // first index of the nested array)&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Built-In Array Methods
&lt;/h4&gt;

&lt;p&gt;For a complete list of Array Methods, refer to the "Methods" section in the MDN link to "Arrays" above.&lt;/p&gt;
&lt;h6&gt;
  
  
  Five Important Methods:
&lt;/h6&gt;

&lt;p&gt;&lt;strong&gt;Push/Pop&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Use push() to add a value to the END of an array (rather than having to count or use "length" to figure out which index in the array you would have to manually add the value to), e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;colors&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;red&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;yellow&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;span class="nx"&gt;colors&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;push&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;green&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c1"&gt;// ['red', 'orange', 'yellow', 'green']&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you were to then state "colors.pop();", then "green" would be removed, because pop() removes the last item in an array.&lt;/p&gt;

&lt;p&gt;NOTE: When pop() is used, the console actually returns the removed variable.  Because a value is returned, that means it can be stored as a variable if so stated: &lt;br&gt;
    &lt;code&gt;var removedColor = colors.pop(); // stores "green"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Unshift/Shift&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;unshift() and shift() operate in the same way as push() and pop(), except that they add/remove values to the BEGINNING of an array.&lt;/p&gt;

&lt;p&gt;NOTE: While counterintuitive, remember that unshift() is used to ADD, not to remove.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;indexOf&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;indexOf() takes an argument and tries to find that argument in a given array.  If it finds it, then it will return the FIRST index of where it's found in the array, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;friends&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;  &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Frank&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Dennis&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Charlie&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Dee&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Cricket&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;span class="nx"&gt;friends&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;indexOf&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Dennis&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c1"&gt;// 1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;NOTE: Remember that indexOf() will only return the FIRST index, so if the same argument appears elsewhere in the array, that index will not be returned.&lt;/p&gt;

&lt;p&gt;ALSO: If an argument is NOT present, "-1" will be returned.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Slice&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;slice() is used to copy different portions of an array, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;fruits&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Banana&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Lemon&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Apple&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mango&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;citrus&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;fruits&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;slice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
    &lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;leads&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;fruits&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Banana&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Lemon&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Apple&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mango&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;citrus&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Lemon&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;NOTE: The first number in slice argument signifies the first index that will be copied ("Orange"), and the second number represents where the slice will end AND IS NON-INCLUSIVE ("Apple").  Thus, only "Orange" and "Lemon" are copied out.&lt;/p&gt;

&lt;p&gt;TIP: If you want to Duplicate an entire array, simply omit the numbers in the slice argument, and all data in the array will be copied over.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Splice&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;splice() changes the contents of an array by removing and/or adding elements at any point in the index.&lt;/p&gt;

&lt;p&gt;To Remove an element, use this syntax:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;fruits&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Banana&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Lemon&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Apple&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mango&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;span class="nx"&gt;fruits&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;splice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
    &lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;leads&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;fruits&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Banana&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Apple&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mango&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The splice syntax works by using the first number as the index number at which to start changing the array (in this case, index 1, which is "Orange").  The second number is the Delete Count, which can be 0 (to not delete the starting index) or any other positive number to indicate how many indices (beginning from your starting index) are to be deleted (in this case, delete two indices starting with index 1, which means deleting indices 1 and 2, i.e., "Orange" and "Lemon").&lt;/p&gt;

&lt;p&gt;To Add an element, use this syntax:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;fruits&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Banana&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Apple&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mango&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;span class="nx"&gt;fruits&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;splice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Lemon&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
    &lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;leads&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; 
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;fruits&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Banana&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Lemon&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Apple&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mango&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this case, splice() is told to: &lt;br&gt;
    (1) look at index 1 (starting as "Apple"), &lt;br&gt;
    (2) abstain from deleting the element at index 1, &lt;br&gt;
    (3) insert "Orange" as the new index 1, and &lt;br&gt;
    (4) insert "Lemon" after "Orange" (this addition process can be repeated indefinitely and will ensure that "Mango" remains as the last index).&lt;/p&gt;

&lt;p&gt;Array Iteration is the process in which a code will run through every element in an array, rather than just one element.  For example, message board comments are stored in an array, and they are only displayed when some code runs through that array and creates HTML content for each comment stored in the array.&lt;/p&gt;

&lt;p&gt;For Each Iteration (newer method):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;colors&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;red&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;yellow&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;green&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;span class="nx"&gt;colors&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;forEach&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;  &lt;span class="c1"&gt;// "color" is a placeholder to represent a console.log(color);  // singular instance of any given element in });  // the collection; call it whatever you want&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Essentially, the "color" placeholder argument merely represents the value of every element in the array.  Thus, the code is calling the console.log() function "for each" element, and then passing in each element's value.&lt;/p&gt;

&lt;p&gt;Alternatively, you could set a function beforehand, and then run it through forEach():&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;colors&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;red&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;yellow&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;green&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;printColors&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;span class="nx"&gt;colors&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;forEach&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;printColors&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;IMPORTANT:  forEach() executes a callback function once for each element in the array in ascending order.  The callback function is expected to have AT LEAST 1 (BUT UP TO 3) ARGUMENTS separated by commas).  The first argument represents the Element in the array.  The second argument represents the Index of said element.  The third argument represents the Array that forEach() was called on (which will be the same for every iteration of the loop).  Thus, if you want to print both the contents of a list along with its index number, you would state:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;colors&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;red&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;yellow&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;green&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;printColors&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
   &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;: &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;span class="nx"&gt;colors&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;forEach&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;printColors&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...which would yield: 
0: red 
1: orange 
2: yellow 
3: green 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Article: &lt;a href="https://dev.to/devlorenzo/js-how-to-handle-errors-fi6"&gt;Asynchronous JS: Working with try/catch and promises&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For Loop Iteration (older method):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;colors&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;red&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;yellow&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;green&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; 
    &lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nx"&gt;colors&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;colors&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;]);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The above code will start by printing index 0 of "colors" to the console, and repeat the process until reaching index 3.  This is possible because the length of "colors" is 4, and the final index value is 3.  As the final index in an array will always be one digit smaller than the length of the array, this loop will necessarily run until all array values are printed.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;a href="https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/Basics" rel="noopener noreferrer"&gt;Objects&lt;/a&gt;
&lt;/h4&gt;

&lt;h5&gt;
  
  
  Basics
&lt;/h5&gt;

&lt;p&gt;An object, like an array, is a collection of related data (of any type) and/or functionality.  Unlike an array, objects are meant to handle data that does not follow a logical and progressive order.  Objects have no built-in order.  Objects use the following Syntax (Key-Value Pairs where the "key" (name) is separated from the value by a colon, and all key-value pairs are separated by commas):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;objectName&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
&lt;span class="na"&gt;member1Name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;member1Value&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="na"&gt;member2Name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;member2Value&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="na"&gt;member3Name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;member3Value&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Retrieving Data from an object is done by either Bracket or Dot Notation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;dog&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Rusty&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;breed&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mutt&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt; 
&lt;span class="p"&gt;};&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...bracket notation: 
`console.log(dog['name']);  // "Rusty"` 
...dot notation: 
`console.log(dog.name);  // "Rusty"`
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h5&gt;
  
  
  Usage Notes: 
&lt;/h5&gt;

&lt;p&gt;You CANNOT use dot notation if the property starts with a number:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;someObject&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="nx"&gt;blah&lt;/span&gt;  &lt;span class="c1"&gt;// invalid &lt;/span&gt;
&lt;span class="nx"&gt;someObject&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;1blah&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;  &lt;span class="c1"&gt;// valid&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You CANNOT use dot notation if the property name has a space in it (not a good practice anyway):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;someObject&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;fav&lt;/span&gt; &lt;span class="nx"&gt;color&lt;/span&gt;  &lt;span class="c1"&gt;// invalid &lt;/span&gt;
&lt;span class="nx"&gt;someObject&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;fav color&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;  &lt;span class="c1"&gt;// valid&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You CAN  look up things using a variable when using bracket notation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;name&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="nx"&gt;someObject&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;str&lt;/span&gt;  &lt;span class="c1"&gt;// doesn't look for "name" &lt;/span&gt;
&lt;span class="nx"&gt;someObject&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;  &lt;span class="c1"&gt;// evaluates str and looks for "name"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Updating Data in an object is done just like an array (access a property and reassign it):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;objectName&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;propertyName&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;newPropertyValue&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;or&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt; 
&lt;span class="nx"&gt;objectName&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;propertyName&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;newPropertyValue&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Creating Objects can be done in one of three ways:&lt;/p&gt;

&lt;p&gt;Make an empty object and then add to it:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;person&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{};&lt;/span&gt; 
&lt;span class="nx"&gt;person&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Travis&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="nx"&gt;person&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;21&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="nx"&gt;person&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;city&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;LA&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Make an object by executing a built-in function and then add to it:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;person&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Object&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; 
&lt;span class="nx"&gt;person&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Travis&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="nx"&gt;person&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;21&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="nx"&gt;person&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;city&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;LA&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Make an object all at once:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;person&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Travis&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;21&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;city&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;LA&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; 
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Objects can be inserted within arrays, so that each item within an array is its own object.  This is typical when working with an online array of comments, posts, friends, etc.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;posts&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; 
    &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="na"&gt;title&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Article 1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;author&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Author 1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;comments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Awesome post.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Terrible post.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; 
    &lt;span class="p"&gt;},&lt;/span&gt; 
    &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="na"&gt;title&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Article 2&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;author&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Author 2&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;comments&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;I love this.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;I hate this.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; 
    &lt;span class="p"&gt;}&lt;/span&gt; 
&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To access the title of the first post, you would state: &lt;br&gt;
    &lt;code&gt;posts[0].title&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;To access the second comment of the second post, you would state: &lt;code&gt;posts[1].comments[1]&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Adding Methods to Objects
&lt;/h4&gt;

&lt;p&gt;A "method" (e.g., alert(), prompt(), indexOf(), etc.) is a function that is a property inside of an object. console.log() is an example of a method that has been added to an object.  "console" is a built-in object with "log()" as a built-in function.  By putting the two together (console.log), you are having JS look at the "console" object and run its "log()" function.  &lt;/p&gt;

&lt;p&gt;Adding methods to objects (rather than having them stand alone) is useful for grouping things together logically to avoid a "Namespace Collision."  For example, to have a function return "WOOF" when a "dog" object "speaks," but have it return "MEOW" when a "cat" object speaks," you would state:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;pets&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; 
    &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="na"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;dog&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;speak&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;WOOF&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="p"&gt;}&lt;/span&gt; 
    &lt;span class="p"&gt;},&lt;/span&gt; 
    &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="na"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;cat&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="na"&gt;speak&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;MEOW&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="p"&gt;}&lt;/span&gt; 
    &lt;span class="p"&gt;}&lt;/span&gt; 
&lt;span class="p"&gt;];&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...so that pets[0].speak() will return "WOOF", and pets[1].speak() will return "MEOW".
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/this" rel="noopener noreferrer"&gt;This&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;The "this" keyword behaves differently depending on the context.  The following example illustrates how "this" behaves when used in methods that have been added to an object.&lt;/p&gt;

&lt;p&gt;Suppose you're making an app that has some comments, and you want to have some comment data stored in an object:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;comments&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
     &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Good&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="err"&gt; &lt;/span&gt;
     &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Bad&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="err"&gt; &lt;/span&gt;
     &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Okay&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; 
  &lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now suppose you want to make a method called "print()" and add it to "comments".  You could define a separate function, and then "print" the data by running "print(comments.data)":&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;forEach&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;elem&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;elem&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="err"&gt;  &lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;comments&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c1"&gt;// "Good,Bad,Okay"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;But if you want to add the print function to the comments object, you can use "this" to refer to the data that is contained in the same object (i.e., "this" object):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;comments&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Good&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="err"&gt; &lt;/span&gt;
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Bad&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="err"&gt; &lt;/span&gt;  
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Okay&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
  &lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;forEach&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;elem&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;elem&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;&lt;span class="err"&gt;  &lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The "this" keyword essentially allows you to use the values contained in comments.data inside of comments.print without the need for any additional argument.  Thus, by writing "this" inside of a method, it refers to the object that the method is defined in.&lt;/p&gt;

&lt;p&gt;⬆ Back to Top&lt;/p&gt;




&lt;h3&gt;
  
  
  &lt;a href="https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Client-side_web_APIs/Manipulating_documents" rel="noopener noreferrer"&gt;DOM ("Document Object Model") Manipulation&lt;/a&gt; &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Background
&lt;/h4&gt;

&lt;p&gt;The DOM is the interface between JS and HTML/CSS (for making content interactive).  When you load an HTML page, the browser turns every HTML tag into a JS object that we can select and manipulate, and all of these are stored inside of a "document" object.  To view the HTML elements converted into JS objects (i.e., the DOM), type the following into the console: console.dir(document);&lt;/p&gt;

&lt;p&gt;NOTE: When performing DOM manipulation, be sure that the JS files are loaded after all HTML is written (or else you will be trying to manipulate HTML that does not yet exist to the JS files, and it will not work.)&lt;/p&gt;

&lt;p&gt;Important DOM Selector Methods (the following five methods have been added into the "document" object):&lt;/p&gt;

&lt;p&gt;&lt;code&gt;document.getElementById()&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Takes in an ID name and returns the one element that matches that name (because an ID can only be associated with one element in a page).  For example, if you have an HTML element with the ID of "highlight", you can return that element by stating: &lt;br&gt;
    &lt;code&gt;var tag = document.getElementById('highlight');&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;You can then use console.dir(tag) to see all of the properties contained in the "highlight" object.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;document.getElementsByClassName()&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Operates in the same way as &lt;code&gt;getElementById()&lt;/code&gt;, but applies to all elements sharing the same class.  If you want to return a list of all elements with the class "bolded", you would state: &lt;br&gt;
    &lt;code&gt;var tags = document.getElementsByClassName('bolded');&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;You can then simply state "tags" to see all of the properties for all "bolded" objects, and you can use &lt;code&gt;console.log(tags[0])&lt;/code&gt; to access the first index of the Node List (not technically an array, but is array-like) containing the "bolded" objects.&lt;/p&gt;

&lt;p&gt;The node list is "array-like" in the sense that you can access individual indices, but you CANNOT apply &lt;code&gt;forEach()&lt;/code&gt; to it (because there is no forEach() function defined for these node lists; they are defined for arrays).&lt;/p&gt;

&lt;p&gt;BUT NOTE: You can use the "&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from" rel="noopener noreferrer"&gt;Array.from()&lt;/a&gt;" method to convert node lists and HTML collections into arrays.&lt;/p&gt;

&lt;p&gt;NOTE: You can also access a specific index (e.g., the first index) more directly by simply stating: &lt;br&gt;
    var tags = document.getElementsByClassName('bolded')[0];&lt;/p&gt;

&lt;p&gt;&lt;code&gt;document.getElementsByTagName()&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Operates in the same way as the two above, but it refers to a general HTML tag (such as &lt;code&gt;&amp;lt;li&amp;gt;, &amp;lt;ul&amp;gt;, &amp;lt;h1&amp;gt;, &amp;lt;head&amp;gt;, &amp;lt;body&amp;gt;&lt;/code&gt;) rather than a specific class/ID.  If you want to return a list of all elements with the &lt;/p&gt;
&lt;li&gt; tag, state: 
    &lt;code&gt;var tags = document.getElementsByTagName('li');&lt;/code&gt;

&lt;p&gt;&lt;code&gt;document.querySelector()&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Operates in the same fashion as the methods above, but does so by using a CSS-Style Selector (i.e., "#" for ID, and "." for class). BUT, it differs significantly by only returning the FIRST MATCH.  For example, to if you want to return an HTML element with the ID of "highlight", you would state: &lt;br&gt;
    &lt;code&gt;var tag = document.querySelector('#highlight');&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;If "highlight" were a class, you would use a period instead of an octothorp, but note that you will only return the first match.&lt;/p&gt;

&lt;p&gt;This works for any syntax that would be valid in CSS, e.g.: &lt;br&gt;
    &lt;code&gt;var tags = document.querySelector('li a.special');&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;query.Selector can also take in basic HTML tag names like &lt;code&gt;&amp;lt;h1&amp;gt;&lt;/code&gt;: &lt;br&gt;
    &lt;code&gt;var tag = document.querySelector('h2');&lt;/code&gt;&lt;br&gt;
    ...but, again, only for the first match.&lt;/p&gt;

&lt;p&gt;If you want to select a Specific Type of element (e.g., a numerical input), you would use brackets and state: &lt;br&gt;
    &lt;code&gt;var tag = document.querySelector('input[type="number"]');&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;document.querySelectorAll()&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Operates in the same manner as query.Selector, except it returns a node list of ALL elements (as objects) that match a given CSS-style selector.&lt;/p&gt;
&lt;h4&gt;
  
  
  Manipulating Style
&lt;/h4&gt;

&lt;p&gt;A DOM object's Style property is one way to manipulate an HTML element's style, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// select your object: &lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;tag&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;highlight&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="c1"&gt;// manipulate your object: &lt;/span&gt;
&lt;span class="nx"&gt;tag&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;blue&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="nx"&gt;tag&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;border&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;10px solid red&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="nx"&gt;tag&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;fontSize&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;70px&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="nx"&gt;tag&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;background&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;yellow&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="nx"&gt;tag&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;marginTop&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;200px&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;NOTE: This is not actually the best way to manipulate an object, as it is very repetitious (not "dry" code), but more significant is the "Separation of Concerns" (the principle that HTML, CSS, and JS should each be responsible for their own separate domain, and crossover between the three should be avoided -- HTML should be pure structure, CSS should be pure presentation, and JS should be pure behavior).  &lt;/p&gt;

&lt;p&gt;Rather than changing multiple style properties in JS, you should turn them on/off by using the CSS file.  For example, you can define a CSS class, select an element in JS, and add the class to its classList:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="nt"&gt;define&lt;/span&gt; &lt;span class="nt"&gt;a&lt;/span&gt; &lt;span class="nt"&gt;class&lt;/span&gt; &lt;span class="nt"&gt;in&lt;/span&gt; &lt;span class="nt"&gt;CSS&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; 
&lt;span class="nc"&gt;.toggleWarning&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;red&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="nl"&gt;border&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;10px&lt;/span&gt; &lt;span class="nb"&gt;solid&lt;/span&gt; &lt;span class="no"&gt;red&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;





&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// add the .toggleWarning class to a select object in JS: &lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;tag&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementsByTagName&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;h1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="nx"&gt;tag&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;classList&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;toggleWarning&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;If you so choose, you can later remove the class by stating: &lt;br&gt;
    &lt;code&gt;tag.classList.remove('toggleWarning');&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;A similar useful method is toggle, which operates by (1) adding the specified class if it is not present in the class list, and (2) removing the specified class if it is present in the class list: &lt;br&gt;
    &lt;code&gt;tag.classList.toggle('toggleWarning');&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;NOTE: A class list is technically NOT AN ARRAY.  This is why you must use add() and remove() rather than push() and pop().&lt;/p&gt;
&lt;h4&gt;
  
  
  Manipulating Text and Content
&lt;/h4&gt;

&lt;p&gt;The textContent property retrieves the text inside of an HTML element.  "Text" is defined as anything between the HTML tags but not including any tags contained within (it extracts only Plain Text).  The method can be used to alter the text by the following syntax: &lt;br&gt;
    &lt;code&gt;tag.textContent = 'blah blah blah';&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;NOTE: Because this method only works in plain text, no modifiers like &lt;code&gt;&amp;lt;strong&amp;gt;&lt;/code&gt; or &lt;code&gt;&amp;lt;em&amp;gt;&lt;/code&gt; will be preserved.&lt;/p&gt;

&lt;p&gt;The innerHTML property is used to manipulate both HTML Text and Inner Elements.  &lt;/p&gt;

&lt;p&gt;IMPORTANT SYNTAX NOTE: When manipulating text and content (or style), it is not necessary to set a variable first.  Instead, you can simply add the textContent or innerHTML property after the selector method, e.g.: &lt;br&gt;
    &lt;code&gt;document.querySelector('h1').textContent = 'Heading 1';&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Manipulating Attributes
&lt;/h4&gt;

&lt;p&gt;The attributes of an HTML element (e.g., href, src, or anything else following the name="text" syntax, such as id, class, etc.) can be modified by using getAttribute() and setAttribute() to read and write attributes.  For example, to return the URL for the following: &lt;br&gt;
   &lt;code&gt;&amp;lt;a href="https://www.google.com/"&amp;gt;Search&amp;lt;/a&amp;gt;&lt;/code&gt; &lt;br&gt;
    ...you would state: &lt;br&gt;
    &lt;code&gt;var link = document.querySelector('a');&lt;br&gt;
    link.getAttribute('href');&lt;/code&gt;&lt;br&gt;
    ...and to modify the link, you would state the attribute as the first argument in the method, and the new URL as the second argument: &lt;br&gt;
    &lt;code&gt;link.setAttribute('href', 'https://www.yahoo.com/');&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;NOTE: When manipulating Images, the "src" attribute may be ignored if the "srcset" attribute has also been set.  In such cases, srcset must be modified.&lt;/p&gt;
&lt;h4&gt;
  
  
  DOM Events
&lt;/h4&gt;

&lt;p&gt;The &lt;a href="https://developer.mozilla.org/en-US/docs/Web/Events" rel="noopener noreferrer"&gt;MDN Event Reference&lt;/a&gt;  contains all of the different events that are recognized by the DOM application programming interface (API).  Some common events to be most familiar with are "click", "change", "mouseover", and "mouseout".&lt;/p&gt;

&lt;p&gt;Events trigger the running of code when a certain action has been taken, as opposed to automatically executing when the page loads (e.g., clicking a button, hovering over a link, pressing a key, etc.).  The event must be selected and then attached to a specific element by means of an Event Listener (e.g., "Listen for a click on this &lt;code&gt;&amp;lt;button&amp;gt;&lt;/code&gt;."  To add a listener, use the addEventListener method through this syntax: &lt;br&gt;
    &lt;code&gt;element.addEventListener('type', functionToCall);&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;For example, to have a message print to console when the first button in a document is clicked, you would state:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;button&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;querySelector&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;button&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c1"&gt;// select element &lt;/span&gt;
&lt;span class="nx"&gt;button&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;addEventListener&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;click&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;  &lt;span class="c1"&gt;// add event listener &lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;The button has been clicked.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c1"&gt;// run code &lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;It is not necessary to use an anonymous function.  The same code could be executed as follows:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;button&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;querySelector&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;button&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="nx"&gt;button&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;addEventListener&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;click&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;printConsole&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;printConsole&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;The button has been clicked.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;



&lt;pre class="highlight plaintext"&gt;&lt;code&gt;However, unless there is a need to use a named function again somewhere else outside of the click listener, it is better to simply use the anonymous function.
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;NOTE: You can have more than one listener on a given element.  They will execute in the order that they were added.&lt;/p&gt;

&lt;p&gt;THIS NOTE: Inside of a listener, the "this" keyword refers to the item that was clicked on (or hovered upon, or which a keypress referred to, etc.).  So whatever element is attached to the addEventListener is the event to which "this" refers.  This is useful in situations where you want a large number of similar but individual (sibling) elements to run specific code only upon itself when activated.  For example, if you have a &lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt; with a dozen &lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt; tags within, and you want each individual &lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt; to change its color when clicked, you can use a for loop and "this" as follows:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;lis&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;querySelectorAll&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;li&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nx"&gt;lis&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="nx"&gt;lis&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;addEventListener&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;click&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
      &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;pink&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="p"&gt;});&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;⬆ Back to Top&lt;/p&gt;




&lt;h3&gt;
  
  
  JS Advanced &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  This
&lt;/h4&gt;

&lt;p&gt;"This" is a reserved keyword, which means it cannot be set as the value of any variable.  The value of "this" is determined upon execution (i.e., "Execution Context").&lt;br&gt;
There are Four Rules governing how the value of "this" is determined:&lt;/p&gt;
&lt;h5&gt;
  
  
  Global Context
&lt;/h5&gt;

&lt;p&gt;This rule applies when you see "this" applied outside of a declared object.  When you see the word "this" in the global context, its value refers to the Global Object, which is the Window in the browser environment.  Thus, if you were to console.log(this), you would return "window".&lt;br&gt;
In essence, every variable that you declare in the global context is in fact attached to the window object, which is what allows "this" to work in the global context without an object being declared.  For example, you can create the following variable:&lt;br&gt;
var person = 'Ellie';&lt;br&gt;
…which can then be accessed as:&lt;br&gt;
window.person&lt;br&gt;
…and which is also synonymous with:&lt;br&gt;
this.person&lt;br&gt;
NOTE: Even when you use "this" inside of a Function, its value is still the global object if no other object is declared within the function, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;variablesInThis&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;person&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Ellie&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;  &lt;span class="c1"&gt;// still the same as var person = 'Ellie'&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;HOWEVER: The above process is considered bad practice for setting global variables, as global variables should be declared at the top of your code (with the value either declared immediately or at a later time within a function).  If you want to prevent the accidental creation of global variables in a function, you can state "use strict" (in quotes) at the top of your JS file, which will return a TypeError indicating that "this" is Undefined upon execution.&lt;/p&gt;

&lt;h5&gt;
  
  
  Object/Implicit
&lt;/h5&gt;

&lt;p&gt;When "this" is found inside of a Declared Object, its value will always be the Closest Parent Object.  For example, given the following object…&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;person&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;firstName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Ellie&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;sayHi&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hi &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;firstName&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;…executing "person.sayHi()" will return "Hi Ellie" because "this.firstName" is equivalent to stating "person.firstName" due to "person" being the closest parent object to "this".&lt;br&gt;
NOTE: Caution must be exercised with Nested Objects, as a reference to properties beyond the scope of the nested object may result in undefined values being returned when using "this" within the nested object.&lt;/p&gt;
&lt;h5&gt;
  
  
  Explicit
&lt;/h5&gt;

&lt;p&gt;In order to avoid problems associated with nested objects, you can set the context of "this" by using the Call, Apply, or Bind methods (which can only be used by Functions, and not by any other data type).&lt;br&gt;
Call uses the following syntax:&lt;br&gt;
        &lt;code&gt;function.call(thisArg, arg1, arg2, …);&lt;/code&gt;&lt;br&gt;
The first argument is whatever object you want the value of "this" to be.  The subsequent arguments are for any optional parameters to be used in the function in which you are changing the context of "this".&lt;br&gt;
NOTE: When the call method is used on a function, that function is immediately invoked.&lt;br&gt;
Consider the following example:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;firstPerson&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;firstName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;John&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;lastName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Doe&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;fullName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;firstName&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt; &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;lastName&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;





&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;secondPerson&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;firstName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mary&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;lastName&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Jane&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;If you want to return the full name of Mary Jane, there is no need to duplicate the fullName function from the first person (John Doe).  Rather, you need merely state…&lt;br&gt;
&lt;code&gt;firstPerson.fullName.call(secondPerson);&lt;/code&gt;&lt;br&gt;
…because using the "secondPerson" argument in call will result in the "this" keyword from the "firstPerson" object actually being applied to the "secondPerson" object instead (i.e., Mary Jane).&lt;br&gt;
Apply uses the following syntax:&lt;br&gt;
function.apply(thisArg, [argsArray]);&lt;br&gt;
Apply is almost identical to call except it only takes two arguments.  The first argument operates the same as call, while the second is an Array (or ARRAY-LIKE OBJECT) that will be passed to the function in which you are changing the value of "this".&lt;br&gt;
NOTE: When the apply method is used on a function, that function is immediately invoked.&lt;br&gt;
Consider the following example:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;firstP&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;John&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;addNumbers&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;c&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
       &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt; calculated &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nx"&gt;c&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
      &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;





&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;secondP&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Jane&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;Stating "firstP.addNumbers(1, 2, 3, 4)" will return "John calculated 10".  You can do the same for Jane by either using call:&lt;br&gt;
firstP.addNumbers.call(secondP, 1, 2, 3, 4);&lt;br&gt;
…or by using apply:&lt;br&gt;
firstP.addNumbers.apply(second, [1, 2, 3, 4]);&lt;br&gt;
Bind uses the following syntax:&lt;br&gt;
function.bind(thisArg, arg1, arg2, …);&lt;br&gt;
Bind is almost identical to call except that instead of invoking the function immediately, bind returns a function definition.  This allows you to save a function with different values of "this" and invoke them at a later time (known as Partial Application), as you may not initially know all of the arguments that will be passed to a function.&lt;br&gt;&lt;br&gt;
In the example for apply above, you might know that you always want to add 1 and 2 for the second person, but not know what other numbers will need to be calculated.  You could first state:&lt;br&gt;
var sPCalc = firstP.addNumbers.bind(secondP, 1, 2);&lt;br&gt;
…and then include more numbers on execution:&lt;br&gt;
sPCalc(3, 4)    // returns "Jane calculated 10"&lt;br&gt;
Bind is also important when working with asynchronous code (e.g., setTimeout), as it allows you to set the context of "this" for a function to be called at a later point in time.  Consider the following:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;person&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;John&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;sayHi&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hi &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;Although you may expect "Hi John" to be displayed in the console after 1 second, this does not occur.  This is because setTimeout() does not run console.log() concurrently with the creation of the "person" variable; rather, it only executes after the timer expires.  As a result, setTimeout() is run in the Global Context as a Window Object.  Thus, "this" actually refers to window rather than "person", because window is the value of "this" upon execution.  You can fix this by stating:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;person&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;John&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;sayHi&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hi &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="p"&gt;}.&lt;/span&gt;&lt;span class="nf"&gt;bind&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;This may appear to be confusing, as you are using "this" to change the value of "this".  However, at the time "person" is CREATED, "this" does in fact refer to "person" because "person" (not window.setTimeout) is the nearest parent object to "bind(this)".  Here, "bind(this)" is equivalent to "bind(person)".&lt;br&gt;
Article: Asynchronous JS: Finally discover how to use SetTimeout and SetInterval&lt;/p&gt;
&lt;h5&gt;
  
  
  New
&lt;/h5&gt;

&lt;p&gt;The new operator is used together with a Constructor Function to create a new object.  Inside the constructor function definition, the keyword "this" refers to the object that is created.  When the new operator is used, an implicit return "this" is added to the constructor function.&lt;br&gt;
NOTE: A popular convention in JS is to capitalize the names of Constructors, which basically operate as model templates upon which new objects will be based.&lt;br&gt;
For example, you can create a constructor function for a person's name:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;Person&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;first&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;last&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;firstName&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;first&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;lastName&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;last&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;In this context, "this" would apply to window in the global context (as there is no object has been declared).  However, when paired with the new operator, "this" will instead refer to the newly created object that has been stored as a variable.  For example…&lt;br&gt;
&lt;code&gt;var john = new Person('John', 'Doe');&lt;/code&gt;&lt;br&gt;
…results in "this.firstName" being equal to "john.firstName" (as "john" is the new object) and "this.lastName" being equal to "john.lastName".&lt;/p&gt;
&lt;h3&gt;
  
  
  Object-Oriented Programming ("OOP")
&lt;/h3&gt;
&lt;h4&gt;
  
  
  About
&lt;/h4&gt;

&lt;p&gt;OOP is a programming model that uses blueprints to create objects.  Such blueprints are conventionally called Classes, and the created objects are called Instances.  The goal is to make classes modular so they can be reused and shared among all parts of an application.  JS does not have "built-in" classes in version ES5, but they can be implemented via constructor functions and objects.&lt;br&gt;
New Operator&lt;br&gt;
As noted in the "this" section above, the new operator is used together with a constructor function to create a new object.  The new operator works by:&lt;br&gt;
(1) creating an empty object;&lt;br&gt;
(2) setting the keyword "this" to be that empty object;&lt;br&gt;
(3) adding an implicit "return this" line to the end of the function; and&lt;br&gt;
(4) adding a property onto the empty object called "&lt;strong&gt;proto&lt;/strong&gt;" (a.k.a., "Dunder     Proto", which links the created object to the prototype property on the     constructor function.&lt;br&gt;
Multiple Constructors&lt;br&gt;
When working with multiple constructors, you can make use of "this" and call to optimize your code, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;Dog&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;bark&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt; just barked!&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;Cat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;Dog&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;call&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;meow&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt; just meowed!&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;NOTE: It may be confusing to see that "this" is used as the first argument in Dog.call() of Cat() to redefine "this" as used in Dog().  However, remember that the constructor will be used with the new operator.  This means that, when new is applied to Cat(), a NEW OBJECT will be created in which all "this" keywords in Cat() will refer to the new cat object (to which "this" will now apply because the cat is the closest parent object).  Thus, you can use "this" as the first argument in Dog.call() to redefine all "this" keywords in Dog() to refer to the newly created Cat() object. &lt;br&gt;
For further optimization, you can use "this" and apply together with a built-in JS object called "arguments", which is an array-like object corresponding to the arguments passed to a function.  As "arguments" is an array-like object, it can be used with apply as a shorthand, e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;Cat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;Dog&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;apply&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;arguments&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;meow&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt; just meowed!&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;h4&gt;
  
  
  Prototypes
&lt;/h4&gt;

&lt;h5&gt;
  
  
  Basics
&lt;/h5&gt;

&lt;p&gt;Prototypes are the mechanism by which JS objects inherit features from one another.  Upon creation, all constructors possess a prototype property, which is an object that can have properties and methods attached to it.  The prototype property has two properties: (1) "constructor", which relates back to the definition of the constructor itself; and (2) "&lt;strong&gt;proto&lt;/strong&gt;", which allows properties or methods of the prototype to be accessed by any object created from the constructor.&lt;br&gt;
NOTE: The "&lt;strong&gt;proto&lt;/strong&gt;" property of a created object is identical to the prototype property of the constructor.  Thus, if you created an object from a Cat() constructor, the following would be true:&lt;br&gt;
catObject.&lt;strong&gt;proto&lt;/strong&gt; === Cat.prototype&lt;/p&gt;
&lt;h5&gt;
  
  
  Prototype Chain
&lt;/h5&gt;

&lt;p&gt;If you want to add a property or method to all objects that will be (or, more significantly, already have been) created by a constructor, you need only add that property/method to the prototype of the constructor.  For example, you have already created two cats (named "button" and "kiwi") from a Cat() constructor, and the only properties in the constructor are "name" and "age".  However, you now want to add a property called "isMammal", which is to be set as "true" for all cats.  You can state…&lt;br&gt;
Cat.prototype.isMammal = true;&lt;br&gt;
…which then results in the following statements returning true:&lt;br&gt;
button.isMammal;    // true&lt;br&gt;
kiwi.isMammal;      // true&lt;br&gt;
In the example above, if you were to access "button" to view its properties and methods, you would not immediately see "isMammal" as a property directly under "button" as you would with "name" and "age".  Rather, you would have to access the "&lt;strong&gt;proto&lt;/strong&gt;" property under "button" to see "isMammal".  Nevertheless, you are still able to access "button.isMammal" without saying "button.&lt;strong&gt;proto&lt;/strong&gt;.isMammal".  This is because JS follows the prototype chain (by following a line of "&lt;strong&gt;proto&lt;/strong&gt;" properties) to locate an object's properties or methods.&lt;br&gt;&lt;br&gt;
The chain here works as follows:&lt;br&gt;
(1)     If the requested property/method is not found directly in the   cat object, check the cat's "&lt;strong&gt;proto&lt;/strong&gt;".&lt;br&gt;
(2)     If the cat's "&lt;strong&gt;proto&lt;/strong&gt;" (which itself an object constructed by     JS's built-in Object() constructor) does not contain the        property/method, then refer to the Object() constructor's       "&lt;strong&gt;proto&lt;/strong&gt;" nested under the cat's "&lt;strong&gt;proto&lt;/strong&gt;".&lt;br&gt;
(3) If the Object() constructor's "&lt;strong&gt;proto&lt;/strong&gt;" does not contain the  property/method, then the result is "undefined" and the     inquiry goes no further, as the Object() constructor is the last    link in the chain.&lt;br&gt;
NOTE: This manner in which JS finds methods can be applied to all created objects.  For example, all arrays are created by JS's built-in Array() constructor, which contains a prototype object to which the "push" method (among others) is attached.  If you create an array named "cats" and you want to push a new cat into the array, you are able to say "cats.push('Stumpy')" rather than "cats.&lt;strong&gt;proto&lt;/strong&gt;.push('Stumpy')" due to prototype chaining.&lt;br&gt;
The prototype chain allows for further Code Optimization.  For example, if you have a Dog() constructor and you want to apply a bark() method to each dog created by Dog(), you would have a lot of repetitive code if you inserted the bark() method directly into the Dog() constructor, as the bark() method would be repeated in every created dog object with the exact same value each time.  But by taking advantage of the linking capabilities of the prototype chain, you could simply state:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;Dog&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nx"&gt;Dog&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;prototype&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;bark&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt; just barked!&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;h5&gt;
  
  
  Closures
&lt;/h5&gt;

&lt;h6&gt;
  
  
  About
&lt;/h6&gt;

&lt;p&gt;A closure is a function that makes use of variables defined in outer functions that have previously returned. Consider the following example:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;outerFunc&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;outerData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;closures are &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;innerFunc&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;innerData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;awesome&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;outerData&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;innerData&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;In this example above, if you were to simply call outerFunc(), you would only return the definition of the inner function, which would appear as:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;innerFunc&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;innerData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;awesome&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;outerData&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;innerData&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;However, as the result of outerFunc() is itself a function, this gives you the ability to call innerFunc() immediately upon calling outerFunc() by simply stating outerFunc()(), which returns, "closures are awesome".  Because innerFunc() makes use of the returned outerData variable defined in outerFunc(), that makes innerFunc() a closure.&lt;br&gt;
NOTE: If an inner function does not make use of any returned external variables, then it is merely a Nested Function.&lt;br&gt;
NOTE: When working with closures, you may either call the inner function right away (via "yourFunc()()"), or you can store the result of the outer function to be used by the inner function at a later time (similar to how bind() works), e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;outer&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;inner&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;storeOuter&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;outer&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nf"&gt;storeOuter&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;  &lt;span class="c1"&gt;// returns 15&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;h5&gt;
  
  
  Usage
&lt;/h5&gt;

&lt;p&gt;Closures are useful for creating Private Variables, which are variables that cannot be modified externally.&lt;br&gt;
Consider the following example:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;counter&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;count&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// Pre-Increment&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;If you were to call counter()() repeatedly, you would return "1" each time, without the count ever going up.  This is because there is no "container" to keep track of the incremented count variable that exists only within the counter() function.  However, if you were to save counter() to a new variable in the global scope:&lt;br&gt;
var counter1 = counter();&lt;br&gt;
…then there is now a persistent variable (i.e., counter1) to "house" the increments to "count" within counter1's own counter() function.&lt;br&gt;
The primary benefit of using closures in this way is that it is no longer possible for the value of count within counter1 to be externally modified by any other function.  Thus, you are free to repeat this process with a new variable named "counter2", which, in turn, will have its own internal count variable insulated from any external modification.  Neither will have their count value increase except through their own internal operations.&lt;br&gt;
Consider the following for another more "practical" example:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;classroom&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;instructors&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Adam&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Ben&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="na"&gt;getInstructors&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;instructors&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="na"&gt;addInstructors&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;instructor&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="nx"&gt;instructors&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;push&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;instructor&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
            &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;instructors&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;Essentially, the classroom() function operates as a model template upon which new "course" objects can be created, and in which all courses will have Adam and Ben as instructors.  You can create two courses as variables (e.g., "course1" and "course2"), and you can add an instructor to course 1: &lt;code&gt;course1.addInstructor('Charlie'); // ['Adam', 'Ben', 'Charlie']&lt;/code&gt;&lt;br&gt;
…but this addition will not be reflected in course2:&lt;br&gt;
&lt;code&gt;course2.getInstructors();     // ['Adam', 'Ben']&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;⬆ Back to Top&lt;/p&gt;


&lt;h3&gt;
  
  
  Our Articles:
&lt;/h3&gt;

&lt;p&gt;
  HTML
  &lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F370225%2F60416eff-f1ff-4a29-a5c9-2a13df7845c8.jpeg" alt="" width="320" height="320"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/4-non-popular-html-tags-giveaway-521p"&gt;
    
      &lt;h2&gt;4 Non-Popular HTML Tags 💻 &lt;/h2&gt;
      &lt;h3&gt;Garvit Motwani for World In Dev ・ Apr 13 '21&lt;/h3&gt;
      
        &lt;span&gt;#html&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#beginners&lt;/span&gt;
        &lt;span&gt;#css&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  CSS
  &lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F370225%2F60416eff-f1ff-4a29-a5c9-2a13df7845c8.jpeg" alt="" width="320" height="320"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/5-css-tricks-tips-that-you-should-know-giveaway-4d0d"&gt;
    
      &lt;h2&gt;5 CSS Tricks &amp;amp; Tips That You Should Know 🚀 + Giveaway &lt;/h2&gt;
      &lt;h3&gt;Garvit Motwani for World In Dev ・ Apr 20 '21&lt;/h3&gt;
      
        &lt;span&gt;#css&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#html&lt;/span&gt;
        &lt;span&gt;#beginners&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  Javascript
  &lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/400-javascript-interview-questions-with-answers-2fcj"&gt;
    
      &lt;h2&gt;400+ JavaScript Interview Questions 🎓 With Answers 🌠&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Apr 27 '21&lt;/h3&gt;
      
        &lt;span&gt;#javascript&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#career&lt;/span&gt;
        &lt;span&gt;#productivity&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/200-js-resources-to-master-programming-3aj6"&gt;
    
      &lt;h2&gt;250+ JS Resources to Master Programming 💥 Cheat Sheet&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Apr 20 '21&lt;/h3&gt;
      
        &lt;span&gt;#javascript&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#productivity&lt;/span&gt;
        &lt;span&gt;#beginners&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k"&gt;
    
      &lt;h2&gt;Projects ideas to become a javascript master 🚀 Resource compilation 💥 + Giveaway⚡&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Apr 10 '21&lt;/h3&gt;
      
        &lt;span&gt;#javascript&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#programming&lt;/span&gt;
        &lt;span&gt;#beginners&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/400-javascript-interview-questions-with-answers-2fcj"&gt;
    
      &lt;h2&gt;400+ JavaScript Interview Questions 🎓 With Answers 🌠&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Apr 27 '21&lt;/h3&gt;
      
        &lt;span&gt;#javascript&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#career&lt;/span&gt;
        &lt;span&gt;#productivity&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F370225%2F60416eff-f1ff-4a29-a5c9-2a13df7845c8.jpeg" alt="" width="320" height="320"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/8-javascript-tips-tricks-that-no-one-teaches-24g1"&gt;
    
      &lt;h2&gt;8 JavaScript Tips &amp;amp; Tricks That No One Teaches 🚀&lt;/h2&gt;
      &lt;h3&gt;Garvit Motwani for World In Dev ・ Apr 6 '21&lt;/h3&gt;
      
        &lt;span&gt;#javascript&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#html&lt;/span&gt;
        &lt;span&gt;#es6&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F370225%2F60416eff-f1ff-4a29-a5c9-2a13df7845c8.jpeg" alt="" width="320" height="320"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/es6-cheatsheet-all-you-need-1iaf"&gt;
    
      &lt;h2&gt;ES6 Cheatsheet 🔥 - All You Need 🚀&lt;/h2&gt;
      &lt;h3&gt;Garvit Motwani for World In Dev ・ Apr 29 '21&lt;/h3&gt;
      
      
    
  &lt;/a&gt;

&lt;br&gt;

  &lt;a href="/garvitmotwani"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F370225%2F60416eff-f1ff-4a29-a5c9-2a13df7845c8.jpeg" alt="garvitmotwani" width="320" height="320"&gt;
    
  &lt;/a&gt;
  &lt;a href="/garvitmotwani/5-array-methods-you-should-know-22ff"&gt;
    
      &lt;h2&gt;5 Array Methods You Should Know 🚀&lt;/h2&gt;
      &lt;h3&gt;Garvit Motwani ・ Apr 27 '21&lt;/h3&gt;
      
        &lt;span&gt;#javascript&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#beginners&lt;/span&gt;
        &lt;span&gt;#html&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F370225%2F60416eff-f1ff-4a29-a5c9-2a13df7845c8.jpeg" alt="" width="320" height="320"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/10-new-javascript-features-in-es2020-that-you-should-know-3ohf"&gt;
    
      &lt;h2&gt;10 New JavaScript Features in ES2020 That You Should Know&lt;/h2&gt;
      &lt;h3&gt;Garvit Motwani for World In Dev ・ Mar 30 '21&lt;/h3&gt;
      
      
    
  &lt;/a&gt;

&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  Others
  &lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;
    
      &lt;h2&gt;The ultimate Cheat sheets compilation (200+) - 🔥🎁 / Roadmap to dev 🚀&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Mar 2 '21&lt;/h3&gt;
      
        &lt;span&gt;#productivity&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#beginners&lt;/span&gt;
        &lt;span&gt;#javascript&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/finally-how-to-understand-math-awesome-resource-list-4end"&gt;
    
      &lt;h2&gt;Finally - How to understand math - Awesome resource list 🚀&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Mar 30 '21&lt;/h3&gt;
      
        &lt;span&gt;#productivity&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
        &lt;span&gt;#beginners&lt;/span&gt;
        &lt;span&gt;#javascript&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  &lt;a href="/worldindev"&gt;
    
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      
    
  &lt;/a&gt;
  &lt;a href="/worldindev/top-google-chrome-extensions-for-devs-2mkf"&gt;
    
      &lt;h2&gt;Top Google Chrome Extensions For Devs 🔥🚀&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Mar 7 '21&lt;/h3&gt;
      
        &lt;span&gt;#showdev&lt;/span&gt;
        &lt;span&gt;#productivity&lt;/span&gt;
        &lt;span&gt;#career&lt;/span&gt;
        &lt;span&gt;#webdev&lt;/span&gt;
      
    
  &lt;/a&gt;

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;

  
    
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    
  

&lt;br&gt;


&lt;/p&gt;




&lt;h2&gt;
  
  
  Backend &lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Basics &lt;a&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Command Line &lt;a&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Node JS &lt;a&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;EJS &lt;a&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;RESTful &lt;a&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Databases &lt;a&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Authentication &lt;a&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Git &lt;a&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Deployment &lt;a&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Conversion to Markdown In Progress --&amp;gt; Available before others &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;here&lt;/a&gt; for now.&lt;/p&gt;

&lt;p&gt;⬆ Back to Top&lt;/p&gt;




&lt;p&gt;Hope you appreciate it, and Thanks for reading!&lt;/p&gt;

&lt;p&gt;PS: Big Thank Bronson for writing this ❤&lt;/p&gt;


&lt;/li&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>career</category>
      <category>productivity</category>
    </item>
    <item>
      <title>250+ JS Resources to Master Programming 💥 Cheat Sheet</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Tue, 20 Apr 2021 13:30:49 +0000</pubDate>
      <link>https://dev.to/worldindev/200-js-resources-to-master-programming-3aj6</link>
      <guid>https://dev.to/worldindev/200-js-resources-to-master-programming-3aj6</guid>
      <description>&lt;p&gt;&lt;code&gt;Hello World!&lt;/code&gt; I felt bored after completing the &lt;a href="https://dev.to/worldindev/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Ultimate Cheat Sheet Compilation&lt;/a&gt;, so I just decided to create another one! The most complete javascript cheat sheet and resource compilation you can find online!&lt;/p&gt;

&lt;p&gt;🔖 - Waaait, don't leave this page without bookmarking it!! &lt;a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Read also:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/400-javascript-interview-questions-with-answers-2fcj" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;400+ JavaScript Interview Questions 🎓 With Answers 🌠&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Apr 27 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#career&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;





&lt;p&gt;⚡ Giveaway ⚡ &lt;br&gt;
We are giving away any course you need on Udemy. Any price any course.&lt;br&gt;
Steps to enter the giveaway&lt;br&gt;
--&amp;gt; React to this post&lt;br&gt;
--&amp;gt; &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;Subscribe to our Newsletter&lt;/a&gt; &amp;lt;-- Very important&lt;/p&gt;

&lt;p&gt;PS: It took me around 10 hours to complete the article - So please remember the &lt;strong&gt;like ❤️&lt;/strong&gt; and &lt;strong&gt;super like 🦄&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;
  Table of content
  &lt;ul&gt;
&lt;li&gt;My cheat Sheet&lt;/li&gt;
&lt;li&gt;Projects ideas to become a javascript master &lt;/li&gt;
&lt;li&gt;
Other resources

&lt;ol&gt;
&lt;li&gt;Complete Javascript cheat sheets&lt;/li&gt;
&lt;li&gt;JS promises&lt;/li&gt;
&lt;li&gt;JS Arrays&lt;/li&gt;
&lt;li&gt;JS loops&lt;/li&gt;
&lt;li&gt;Preprocessor&lt;/li&gt;
&lt;li&gt;CoffeScript&lt;/li&gt;
&lt;li&gt;EJS&lt;/li&gt;
&lt;li&gt;Babel&lt;/li&gt;
&lt;li&gt;JS Frameworks &amp;amp; Libraries&lt;/li&gt;
&lt;li&gt;Angular&lt;/li&gt;
&lt;li&gt;Vue&lt;/li&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;JQuery&lt;/li&gt;
&lt;li&gt;Others&lt;/li&gt;
&lt;li&gt;Node&lt;/li&gt;
&lt;li&gt;Other resources&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Remember the like ❤️ and maybe super like🦄&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;/p&gt;


&lt;p&gt;
  For beginners
  &lt;h2&gt;
  
  
  What is JS (Javascript)
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;JavaScript is a scripting or programming language that allows you to implement complex features on web pages — every time a web page does more than just sit there and display static information for you to look at — displaying timely content updates, interactive maps, animated 2D/3D graphics, scrolling video jukeboxes, etc. — you can bet that JavaScript is probably involved. It is the third layer of the layer cake of standard web technologies. &lt;a href="https://developer.mozilla.org/en-US/docs/Learn/JavaScript/First_steps/What_is_JavaScript" rel="noopener noreferrer"&gt;MDN&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuggvpcrg4eolng5deqkc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuggvpcrg4eolng5deqkc.png" alt="image" width="442" height="429"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;
  
  
  What it used for?
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;To put things simply, JavaScript is an object orient programming language designed to make web development easier and more attractive. In most cases, JavaScript is used to create responsive, interactive elements for web pages, enhancing the user experience. Things like menus, animations, video players, interactive maps, and even simple in-browser games can be created quickly and easily with JavaScript. JavaScript is one of the most popular programming languages in the world. &lt;a href="https://www.bitdegree.org/tutorials/what-is-javascript-used-for/#:~:text=To%20put%20things%20simply%2C%20JavaScript,pages%2C%20enhancing%20the%20user%20experience." rel="noopener noreferrer"&gt;BitDegree - What Is JavaScript Used For And Why You Should Learn It&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;
  
  
  Hello World In Javascript:
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;alert&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello World&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Output&lt;/span&gt; &lt;span class="nx"&gt;data&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;an&lt;/span&gt; &lt;span class="nx"&gt;alert&lt;/span&gt; &lt;span class="nx"&gt;box&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;browser&lt;/span&gt; &lt;span class="nb"&gt;window&lt;/span&gt;
&lt;span class="nf"&gt;confirm&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello World&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Opens&lt;/span&gt; &lt;span class="nx"&gt;up&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;yes&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;no&lt;/span&gt; &lt;span class="nx"&gt;dialog&lt;/span&gt; &lt;span class="nx"&gt;and&lt;/span&gt; &lt;span class="nx"&gt;returns&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt; &lt;span class="nx"&gt;depending&lt;/span&gt; &lt;span class="nx"&gt;on&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt; &lt;span class="nx"&gt;click&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello World&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Writes&lt;/span&gt; &lt;span class="nx"&gt;information&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;browser&lt;/span&gt; &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;good&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nx"&gt;debugging&lt;/span&gt; &lt;span class="nx"&gt;purposes&lt;/span&gt;
&lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;write&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello World&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Write&lt;/span&gt; &lt;span class="nx"&gt;directly&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;HTML&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;
&lt;span class="nf"&gt;prompt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Remember the like!&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Creates&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;dialogue&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt; &lt;span class="nx"&gt;input&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Resources to learn it:
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide" rel="noopener noreferrer"&gt;Mozilla’s JavaScript Guide&lt;/a&gt;&lt;br&gt;
JavaScript track on Codecademy: Interactive tutorials for beginners.&lt;br&gt;
JavaScript for Cats by Max Ogden&lt;br&gt;
Eloquent JavaScript by Marijn Haverbeke&lt;br&gt;
Wikibooks’ JavaScript book&lt;br&gt;
JavaScript Lectures by Douglas Crockford&lt;br&gt;
You Don't Know JS - Possibly the best book written on modern JavaScript, completely readable online for free, or can be bought to support the author.&lt;br&gt;
braziljs/js-the-right-way - An easy-to-read, quick reference for JS best practices, accepted coding standards, and links around the Web.&lt;br&gt;
JSbooks - Directory of free JavaScript ebooks.&lt;br&gt;
Superhero.js - A collection of resources about creating, testing and maintaining a large JavaScript code base.&lt;br&gt;
SJSJ - Simplified JavaScript Jargon is a community-driven attempt at explaining the loads of buzzwords making the current JavaScript ecosystem in a few simple words.&lt;br&gt;
How to Write an Open Source JavaScript Library - A comprehensive guide through a set of steps to publish a JavaScript open source library.&lt;br&gt;
JavaScript Tutorials - Learn Javascript online from a diverse range of user ranked online tutorials.&lt;br&gt;
Functional-Light JavaScript - Pragmatic, balanced FP in JavaScript.&lt;br&gt;
Clean Code JavaScript - Clean Code concepts adapted for JavaScript.&lt;br&gt;
&lt;a href="https://github.com/ShinobiWPS/awesome-javascript#worth-reading" rel="noopener noreferrer"&gt;List at GitHub - Awesome Javascript - By Alexandru Gherasim&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  At Reddit - &lt;a href="https://www.reddit.com/r/javascript/comments/6mlc9d/what_10_things_should_a_serious_javascript/" rel="noopener noreferrer"&gt;What 10 Things Should a Serious Javascript Developer Know Right Now?&lt;/a&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Scope.&lt;/strong&gt; If you don't understand this intimately then you aren't that serious about this language. This is the number one point intentionally and I cannot stress it enough.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Architecture.&lt;/strong&gt; You don't have to be a master software architect, but if you cannot perform some basic planning and put pieces together without massive layers of tooling you are an imposter. Expecting frameworks and other tools to simply do it for you isn't very impressive.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;DOM.&lt;/strong&gt; It is very common to see developers hiding from the DOM by layers of abstractions and other stupid crap. querySelectors are great, but are also 2800x slower than the standard DOM methods. That isn't trivial. These methods are super simple, so there is no valid excuse for developers fumbling over this or hiding in fear. &lt;a href="http://prettydiff.com/guide/unrelated_dom.xhtml" rel="noopener noreferrer"&gt;http://prettydiff.com/guide/unrelated_dom.xhtml&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Node.js&lt;/strong&gt; If you are a serious developer should have a pretty solid grasp of how to walk the file system. You should understand how to conveniently read files as text or less conveniently read files as bit for bit binary buffers.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Timing and asynchronous operations.&lt;/strong&gt; Events, timers, network requests are all asynchronous and separate from each other and exist both in Node and in the browser. You have to be able to understand how to work with callbacks or promises.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Accessibility.&lt;/strong&gt; The interactions imposed by JavaScript can present accessibility barriers. A serious JavaScript developer is already familiar with WCAG 2.0 and knows how to work within its recommendations or when to push back on violating business requirements.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Security.&lt;/strong&gt; You need to have at least a basic understanding of security violations, security controls, and privacy. You don't need to be a CISSP, but you need to be able to supply recommendations and avoid obvious failures. If you cannot get this right in the most basic sense you aren't a serious developer.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Data structures.&lt;/strong&gt; You need to understand how to organize data in a way that allows the fastest possible execution without compromising maintenance. This is something that is learned through academic study and repeated experience writing applications.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Presentation and semantics.&lt;/strong&gt; You really need to have a basic understanding how to properly organize the content your users will consume and how to present in a consumable way efficiently. This is something almost completely learned from experience only. You might think CSS and HTML are simple skills that can be picked up when needed, but you would be absolutely wrong.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Knowing when to avoid the bullshit.&lt;/strong&gt; Many developers lack the years of experience to be confident in their performance.... so some of these developers will try to fake it. Don't be an imposter, because everybody will see straight through it. Hoping mountains of abstractions, tooling, frameworks, compilers, and other bullshit will save you just bogs down your application and screws over your teammates. If you aren't confident then be honest about that and seek mentorship or get involved with open source software outside of work.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F727auzola6gykhln320v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F727auzola6gykhln320v.png" alt="image" width="800" height="371"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.mindmeister.com/283065198/getting-started-with-javascript?fullscreen=1" rel="noopener noreferrer"&gt;Source&lt;/a&gt; &lt;/p&gt;



&lt;/p&gt;

&lt;h2&gt;
  
  
  JS Cheat Sheet: &lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;--&amp;gt; Download the PDF Version of this Cheat Sheet &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Include Javascript:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt; &lt;span class="nx"&gt;type&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;text/javascript&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/script&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;
&lt;span class="c1"&gt;// or Include it in an external file (this is a comment)&lt;/span&gt;
&lt;span class="cm"&gt;/* This is also another way you can insert comments,
Multiline normally */&lt;/span&gt;

&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt; &lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;myscript.js&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/script&amp;gt;&amp;lt;code&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="nx"&gt;code&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;

&lt;span class="c1"&gt;// PS: Remember to sub to our newsletter for the Giveaway!&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Variables:
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;myVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;22&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;//this can be a string or number. var is globally defined&lt;/span&gt;

&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;myVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;22&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;//this can be a string or number. let can be reassigned&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;myVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;22&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;//this can be a string or number. can't be reassigned&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;a href="https://www.w3schools.com/js/js_variables.asp" rel="noopener noreferrer"&gt;JavaScript Variables - w3schools&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;






&lt;h3&gt;
  
  
  Data Types:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;//string&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;string&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ASCII text&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;//int&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;integer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;123456789&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;//float&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;float&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;123.456&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;//boolean, can be true or false&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;t&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;f&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;//undefined&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;undef&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="c1"&gt;//defaults to undefined&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;undef&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;undefined&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="c1"&gt;//not common, use null&lt;/span&gt;
&lt;span class="c1"&gt;//null&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;nul&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;//array&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;arr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hello&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;my&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;name&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;is&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Dr.Hippo&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;123&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="c1"&gt;//object&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;person&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;name&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;John Smith&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;age&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;27&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="c1"&gt;//function&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;fun&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(){&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="mi"&gt;42&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftnspq17g3uocqimoe334.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftnspq17g3uocqimoe334.png" alt="image" width="800" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.c-sharpcorner.com/article/datatypes-in-javascript/" rel="noopener noreferrer"&gt;Source - Datatypes In JavaScript - c-sharpcorner.com&lt;/a&gt; &lt;/p&gt;


&lt;h3&gt;
  
  
  Operators
&lt;/h3&gt;

&lt;p&gt;Basic Operators&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Addition&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Subtraction&lt;/span&gt;
&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Multiplication&lt;/span&gt;
&lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Division&lt;/span&gt;
&lt;span class="p"&gt;(...)&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Grouping&lt;/span&gt; &lt;span class="nx"&gt;operator&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;operations&lt;/span&gt; &lt;span class="nx"&gt;within&lt;/span&gt; &lt;span class="nx"&gt;brackets&lt;/span&gt; &lt;span class="nx"&gt;are&lt;/span&gt; &lt;span class="nx"&gt;executed&lt;/span&gt; &lt;span class="nx"&gt;earlier&lt;/span&gt; &lt;span class="nx"&gt;than&lt;/span&gt; &lt;span class="nx"&gt;those&lt;/span&gt; &lt;span class="nx"&gt;outside&lt;/span&gt;
&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nc"&gt;Modulus &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;remainder&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;++&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Increment&lt;/span&gt; &lt;span class="nx"&gt;numbers&lt;/span&gt;
&lt;span class="o"&gt;--&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Decrement&lt;/span&gt; &lt;span class="nx"&gt;numbers&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;



&lt;p&gt;Comparison Operators&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="nx"&gt;Equal&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt;
&lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="nx"&gt;Equal&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt; &lt;span class="nx"&gt;and&lt;/span&gt; &lt;span class="nx"&gt;equal&lt;/span&gt; &lt;span class="nx"&gt;type&lt;/span&gt;
&lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="nx"&gt;Not&lt;/span&gt; &lt;span class="nx"&gt;equal&lt;/span&gt;
&lt;span class="o"&gt;!==&lt;/span&gt; &lt;span class="nx"&gt;Not&lt;/span&gt; &lt;span class="nx"&gt;equal&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt; &lt;span class="nx"&gt;or&lt;/span&gt; &lt;span class="nx"&gt;not&lt;/span&gt; &lt;span class="nx"&gt;equal&lt;/span&gt; &lt;span class="nx"&gt;type&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;Greater&lt;/span&gt; &lt;span class="nx"&gt;than&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nx"&gt;Less&lt;/span&gt; &lt;span class="nx"&gt;than&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;=&lt;/span&gt; &lt;span class="nx"&gt;Greater&lt;/span&gt; &lt;span class="nx"&gt;than&lt;/span&gt; &lt;span class="nx"&gt;or&lt;/span&gt; &lt;span class="nx"&gt;equal&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;=&lt;/span&gt; &lt;span class="nx"&gt;Less&lt;/span&gt; &lt;span class="nx"&gt;than&lt;/span&gt; &lt;span class="nx"&gt;or&lt;/span&gt; &lt;span class="nx"&gt;equal&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt;
&lt;span class="p"&gt;?&lt;/span&gt; &lt;span class="nx"&gt;Ternary&lt;/span&gt; &lt;span class="nx"&gt;operator&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Logical Operators&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nx"&gt;Logical&lt;/span&gt; &lt;span class="nx"&gt;and&lt;/span&gt;
&lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="nx"&gt;Logical&lt;/span&gt; &lt;span class="nx"&gt;or&lt;/span&gt;
&lt;span class="o"&gt;!&lt;/span&gt; &lt;span class="nx"&gt;Logical&lt;/span&gt; &lt;span class="nx"&gt;not&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Bitwise Operators&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="nx"&gt;AND&lt;/span&gt; &lt;span class="nx"&gt;statement&lt;/span&gt;
&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="nx"&gt;OR&lt;/span&gt; &lt;span class="nx"&gt;statement&lt;/span&gt;
&lt;span class="o"&gt;~&lt;/span&gt; &lt;span class="nx"&gt;NOT&lt;/span&gt;
&lt;span class="o"&gt;^&lt;/span&gt; &lt;span class="nx"&gt;XOR&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class="nx"&gt;Left&lt;/span&gt; &lt;span class="nx"&gt;shift&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;Right&lt;/span&gt; &lt;span class="nx"&gt;shift&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;Zero&lt;/span&gt; &lt;span class="nx"&gt;fill&lt;/span&gt; &lt;span class="nx"&gt;right&lt;/span&gt; &lt;span class="nx"&gt;shift&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Loops
&lt;/h3&gt;

&lt;p&gt;for - loops through a block of code a number of times.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;statement&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;statement&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;statement&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="c1"&gt;// Coooode&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;for/in - loops through the properties of an object.&lt;br&gt;
for/of - loops through the values of an iterable object.&lt;/p&gt;

&lt;p&gt;while - loops through a block of code while a specified condition is true.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;while &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Break and Continue&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;When you use break without a label, it terminates the innermost enclosing while, do-while, for, or switch immediately and transfers control to the following statement.&lt;br&gt;
When you use break with a label, it terminates the specified labeled statement.&lt;/p&gt;

&lt;p&gt;When you use continue without a label, it terminates the current iteration of the innermost enclosing while, do-while, or for statement and continues execution of the loop with the next iteration. In contrast to the break statement, continue does not terminate the execution of the loop entirely. In a while loop, it jumps back to the condition. In a for loop, it jumps to the increment-expression.&lt;br&gt;
When you use continue with a label, it applies to the looping statement identified with that label.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Loops_and_iteration#break_statement" rel="noopener noreferrer"&gt;Source - Loops and iteration - MDN&lt;/a&gt;&lt;/p&gt;




&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;



&lt;h3&gt;
  
  
  Strings
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx8e2qr70cnaopqss42w8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx8e2qr70cnaopqss42w8.png" alt="image" width="800" height="450"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/frugencefidel/10-javascript-string-methods-you-should-know-4l76"&gt;dev.to Article - 10 JavaScript string methods you should know - by @frugencefidel &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Escape characters&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="err"&gt;\&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt; — Single quote
&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;" — Double quote
&lt;/span&gt;&lt;span class="se"&gt;\\&lt;/span&gt;&lt;span class="s1"&gt; — Backslash
&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;b — Backspace
&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;f — Form feed
&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s1"&gt; — New line
&lt;/span&gt;&lt;span class="se"&gt;\r&lt;/span&gt;&lt;span class="s1"&gt; — Carriage return
&lt;/span&gt;&lt;span class="se"&gt;\t&lt;/span&gt;&lt;span class="s1"&gt; — Horizontal tabulator
&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;v — Vertical tabulator
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Array and array methods
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9s2uyc4ksif42rtm810r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9s2uyc4ksif42rtm810r.png" alt="image" width="800" height="443"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://morioh.com/p/3ba421a8a63d" rel="noopener noreferrer"&gt;Top 10 JavaScript Array Methods You Should Know - By Rachel Cole at morioh.com&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;concat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;arr1&lt;/span&gt;&lt;span class="p"&gt;,[...])&lt;/span&gt; &lt;span class="c1"&gt;// Joins two or more arrays, and returns a copy of the joined arrays&lt;/span&gt;
&lt;span class="nf"&gt;copyWithin&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;target&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;start&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;end&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Copies array elements within the array, to and from specified positions&lt;/span&gt;
&lt;span class="nf"&gt;entries&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="c1"&gt;// Returns a key/value pair Array Iteration Object&lt;/span&gt;
&lt;span class="nf"&gt;every&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;currentval&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;]),[&lt;/span&gt;&lt;span class="nx"&gt;thisVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Checks if every element in an array pass a test&lt;/span&gt;
&lt;span class="nf"&gt;fill&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;val&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;start&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;end&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Fill the elements in an array with a static value&lt;/span&gt;
&lt;span class="nf"&gt;filter&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;currentval&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;]),[&lt;/span&gt;&lt;span class="nx"&gt;thisVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Creates a new array with every element in an array that pass a test&lt;/span&gt;
&lt;span class="nf"&gt;find&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;currentval&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;]),[&lt;/span&gt;&lt;span class="nx"&gt;thisVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Returns the value of the first element in an array that pass a test&lt;/span&gt;
&lt;span class="nf"&gt;findIndex&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;currentval&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;]),[&lt;/span&gt;&lt;span class="nx"&gt;thisVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Returns the index of the first element in an array that pass a test&lt;/span&gt;
&lt;span class="nf"&gt;forEach&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;currentval&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;]),[&lt;/span&gt;&lt;span class="nx"&gt;thisVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Calls a function for each array element&lt;/span&gt;
&lt;span class="k"&gt;from&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;obj&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;mapFunc&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;thisVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Creates an array from an object&lt;/span&gt;
&lt;span class="nf"&gt;includes&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;element&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;start&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Check if an array contains the specified element&lt;/span&gt;
&lt;span class="nf"&gt;indexOf&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;element&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;start&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Search the array for an element and returns its position&lt;/span&gt;
&lt;span class="nf"&gt;isArray&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;obj&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="c1"&gt;// Checks whether an object is an array&lt;/span&gt;
&lt;span class="nf"&gt;join&lt;/span&gt;&lt;span class="p"&gt;([&lt;/span&gt;&lt;span class="nx"&gt;seperator&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Joins all elements of an array into a string&lt;/span&gt;
&lt;span class="nf"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="c1"&gt;// Returns a Array Iteration Object, containing the keys of the original array&lt;/span&gt;
&lt;span class="nf"&gt;lastIndexOf&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;element&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;start&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Search the array for an element, starting at the end, and returns its position&lt;/span&gt;
&lt;span class="nf"&gt;map&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;currentval&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;]),[&lt;/span&gt;&lt;span class="nx"&gt;thisVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Creates a new array with the result of calling a function for each array element&lt;/span&gt;
&lt;span class="nf"&gt;pop&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="c1"&gt;// Removes the last element of an array, and returns that element&lt;/span&gt;
&lt;span class="nf"&gt;push&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;item1&lt;/span&gt;&lt;span class="p"&gt;,[...])&lt;/span&gt; &lt;span class="c1"&gt;// Adds new elements to the end of an array, and returns the new length&lt;/span&gt;
&lt;span class="nf"&gt;reduce&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;total&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;currentval&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;]),[&lt;/span&gt;&lt;span class="nx"&gt;initVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Reduce the values of an array to a single value (going left-to-right)&lt;/span&gt;
&lt;span class="nf"&gt;reduceRight&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;total&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;currentval&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;]),[&lt;/span&gt;&lt;span class="nx"&gt;initVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Reduce the values of an array to a single value (going right-to-left)&lt;/span&gt;
&lt;span class="nf"&gt;reverse&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="c1"&gt;// Reverses the order of the elements in an array&lt;/span&gt;
&lt;span class="nf"&gt;shift&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="c1"&gt;// Removes the first element of an array, and returns that element&lt;/span&gt;
&lt;span class="nf"&gt;slice&lt;/span&gt;&lt;span class="p"&gt;([&lt;/span&gt;&lt;span class="nx"&gt;start&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;end&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Selects a part of an array, and returns the new array&lt;/span&gt;
&lt;span class="nf"&gt;some&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;currentval&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;]),[&lt;/span&gt;&lt;span class="nx"&gt;thisVal&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Checks if any of the elements in an array pass a test&lt;/span&gt;
&lt;span class="nf"&gt;sort&lt;/span&gt;&lt;span class="p"&gt;([&lt;/span&gt;&lt;span class="nx"&gt;compareFunc&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="c1"&gt;// Sorts the elements of an array&lt;/span&gt;
&lt;span class="nf"&gt;splice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;,[&lt;/span&gt;&lt;span class="nx"&gt;quantity&lt;/span&gt;&lt;span class="p"&gt;],[&lt;/span&gt;&lt;span class="nx"&gt;item1&lt;/span&gt;&lt;span class="p"&gt;,...])&lt;/span&gt; &lt;span class="c1"&gt;// Adds/Removes elements from an array&lt;/span&gt;
&lt;span class="nf"&gt;toString&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="c1"&gt;// Converts an array to a string, and returns the result&lt;/span&gt;
&lt;span class="nf"&gt;unshift&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;item1&lt;/span&gt;&lt;span class="p"&gt;,...)&lt;/span&gt; &lt;span class="c1"&gt;// Adds new elements to the beginning of an array, and returns the new length&lt;/span&gt;
&lt;span class="nf"&gt;valueOf&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="c1"&gt;// Returns the primitive value of an array&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Functions
&lt;/h3&gt;

&lt;p&gt;Syntax&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;name&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;parameter1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;parameter2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;parameter3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="c1"&gt;// code to be executed&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Examples&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;myFunction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;p1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;p2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;p1&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;p2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;   &lt;span class="c1"&gt;// The function returns the product of p1 and p2&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;myFunction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;   &lt;span class="c1"&gt;// Function is called, return value will end up in x&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;myFunction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;             &lt;span class="c1"&gt;// Function returns the product of a and b&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// Convert Fahrenheit to Celsius:&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;toCelsius&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;fahrenheit&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;fahrenheit&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;32&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;demo&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;innerHTML&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;toCelsius&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;77&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;a href="https://www.w3schools.com/js/js_functions.asp" rel="noopener noreferrer"&gt;Source - JavaScript Functions - w3schools&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  Maths
&lt;/h3&gt;

&lt;p&gt;Methods&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2fnz754dotv0ki73p5sa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2fnz754dotv0ki73p5sa.png" alt="carbon (1)" width="800" height="525"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/finally-how-to-understand-math-awesome-resource-list-4end" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Finally - How to understand math - Awesome resource list 🚀&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Mar 30 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#beginners&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;p&gt;Properties&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;E&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Euler&lt;/span&gt;&lt;span class="err"&gt;’&lt;/span&gt;&lt;span class="nx"&gt;s&lt;/span&gt; &lt;span class="nx"&gt;number&lt;/span&gt;
&lt;span class="nx"&gt;LN2&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;The&lt;/span&gt; &lt;span class="nx"&gt;natural&lt;/span&gt; &lt;span class="nx"&gt;logarithm&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;
&lt;span class="nx"&gt;LN10&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Natural&lt;/span&gt; &lt;span class="nx"&gt;logarithm&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;
&lt;span class="nx"&gt;LOG2E&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Base&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="nx"&gt;logarithm&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="nx"&gt;E&lt;/span&gt;
&lt;span class="nx"&gt;LOG10E&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Base&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt; &lt;span class="nx"&gt;logarithm&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="nx"&gt;E&lt;/span&gt;
&lt;span class="nx"&gt;PI&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;The&lt;/span&gt; &lt;span class="nx"&gt;number&lt;/span&gt; &lt;span class="nx"&gt;PI&lt;/span&gt;
&lt;span class="nx"&gt;SQRT1_2&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;Square&lt;/span&gt; &lt;span class="nx"&gt;root&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;
&lt;span class="nx"&gt;SQRT2&lt;/span&gt; &lt;span class="err"&gt;—&lt;/span&gt; &lt;span class="nx"&gt;The&lt;/span&gt; &lt;span class="nx"&gt;square&lt;/span&gt; &lt;span class="nx"&gt;root&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Date
&lt;/h3&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;



&lt;p&gt;Javascript date objects allow us to work with date and time. We can retrieve information for it by creating a date and assign and assigning it to a variable:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;d&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Date&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// We usually call it d or date&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Date object provide us a lot of different methods, the most used are year, month, day, hours, minutes, seconds, and milliseconds. Remember that you always have to precise the entire year (1950 and not only 50), that we always start with 0 (so, for example, December is the eleventh, a minute is composed of 59 seconds...) and that day is in a 24 hours format. &lt;/p&gt;

&lt;p&gt;You can then retrieve from date a lot of differents info:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getDate&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="nx"&gt;Returns&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;day&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nf"&gt;month &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;31&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getDay&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;  &lt;span class="nx"&gt;Returns&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;day&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nf"&gt;week &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getFullYear&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="nx"&gt;Returns&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;year&lt;/span&gt;
&lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getHours&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;    &lt;span class="nx"&gt;Returns&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nf"&gt;hour &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;23&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getMilliseconds&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="nx"&gt;Returns&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nf"&gt;milliseconds &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;999&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getMinutes&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;  &lt;span class="nx"&gt;Returns&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nf"&gt;minutes &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;59&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getMonth&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;    &lt;span class="nx"&gt;Returns&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nf"&gt;month &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;d&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getSeconds&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;  &lt;span class="nx"&gt;Returns&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nf"&gt;seconds &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;59&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;We can also set things... &lt;a href="https://dev.to/devlorenzo/js-how-to-get-current-date-1km"&gt;Open the article&lt;/a&gt; to continue reading&lt;/p&gt;


&lt;h3&gt;
  
  
  Events
&lt;/h3&gt;

&lt;p&gt;
  Mouse
  &lt;br&gt;
onclick - The event occurs when the user clicks on an element&lt;br&gt;
oncontextmenu - User right-clicks on an element to open a context menu&lt;br&gt;
ondblclick - The user double-clicks on an element&lt;br&gt;
onmousedown - User presses a mouse button over an element&lt;br&gt;
onmouseenter - The pointer moves onto an element&lt;br&gt;
onmouseleave - Pointer moves out of an element&lt;br&gt;
onmousemove - The pointer is moving while it is over an element&lt;br&gt;
onmouseover - When the pointer is moved onto an element or one of its children&lt;br&gt;
onmouseout - User moves the mouse pointer out of an element or one of its children&lt;br&gt;
onmouseup - The user releases a mouse button while over an element&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  Keyboard
  &lt;br&gt;
onkeydown - When the user is pressing a key down&lt;br&gt;
onkeypress - The moment the user starts pressing a key&lt;br&gt;
onkeyup - The user releases a key&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  Frame
  &lt;br&gt;
onabort - The loading of a media is aborted&lt;br&gt;
onbeforeunload - Event occurs before the document is about to be unloaded&lt;br&gt;
onerror - An error occurs while loading an external file&lt;br&gt;
onhashchange - There have been changes to the anchor part of a URL&lt;br&gt;
onload - When an object has loaded&lt;br&gt;
onpagehide - The user navigates away from a webpage&lt;br&gt;
onpageshow - When the user navigates to a webpage&lt;br&gt;
onresize - The document view is resized&lt;br&gt;
onscroll - An element’s scrollbar is being scrolled&lt;br&gt;
onunload - Event occurs when a page has unloaded&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  Form
  &lt;br&gt;
onblur - When an element loses focus&lt;br&gt;
onchange - The content of a form element changes (for , and )&lt;br&gt;
onfocus - An element gets focus&lt;br&gt;
onfocusin - When an element is about to get focus&lt;br&gt;
onfocusout - The element is about to lose focus&lt;br&gt;
oninput - User input on an element&lt;br&gt;
oninvalid - An element is invalid&lt;br&gt;
onreset - A form is reset&lt;br&gt;
onsearch - The user writes something in a search field (for )&lt;br&gt;
onselect - The user selects some text (for  and )&lt;br&gt;
onsubmit - A form is submitted&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  Drag
  &lt;br&gt;
ondrag - An element is dragged&lt;br&gt;
ondragend - The user has finished dragging the element&lt;br&gt;
ondragenter - The dragged element enters a drop target&lt;br&gt;
ondragleave - A dragged element leaves the drop target&lt;br&gt;
ondragover - The dragged element is on top of the drop target&lt;br&gt;
ondragstart - User starts to drag an element&lt;br&gt;
ondrop - Dragged element is dropped on the drop target&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  Clipboard
  &lt;br&gt;
oncopy - User copies the content of an element&lt;br&gt;
oncut - The user cuts an element’s content&lt;br&gt;
onpaste - A user pastes content in an element&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  Media
  &lt;br&gt;
onabort - Media loading is aborted&lt;br&gt;
oncanplay - The browser can start playing media (e.g. a file has buffered enough)&lt;br&gt;
oncanplaythrough - When browser can play through media without stopping&lt;br&gt;
ondurationchange - The duration of the media changes&lt;br&gt;
onended - The media has reached its end&lt;br&gt;
onerror - Happens when an error occurs while loading an external file&lt;br&gt;
onloadeddata - Media data is loaded&lt;br&gt;
onloadedmetadata - Meta Metadata (like dimensions and duration) are loaded&lt;br&gt;
onloadstart - Browser starts looking for specified media&lt;br&gt;
onpause - Media is paused either by the user or automatically&lt;br&gt;
onplay - The media has been started or is no longer paused&lt;br&gt;
onplaying - Media is playing after having been paused or stopped for buffering&lt;br&gt;
onprogress - Browser is in the process of downloading the media&lt;br&gt;
onratechange - The playing speed of the media changes&lt;br&gt;
onseeked - User is finished moving/skipping to a new position in the media&lt;br&gt;
onseeking - The user starts moving/skipping&lt;br&gt;
installed - The browser is trying to load the media but it is not available&lt;br&gt;
onsuspend - Browser is intentionally not loading media&lt;br&gt;
ontimeupdate - The playing position has changed (e.g. because of fast forward)&lt;br&gt;
onvolumechange - Media volume has changed (including mute)&lt;br&gt;
onwaiting - Media paused but expected to resume (for example, buffering)&lt;br&gt;
animationend - A CSS animation is complete&lt;br&gt;
animationiteration - CSS animation is repeated&lt;br&gt;
animationstart - CSS animation has started&lt;br&gt;


&lt;/p&gt;

&lt;p&gt;
  Other
  &lt;br&gt;
transitionend - Fired when a CSS transition has completed&lt;br&gt;
onmessage - A message is received through the event source&lt;br&gt;
onoffline - Browser starts to work offline&lt;br&gt;
ononline - The browser starts to work online&lt;br&gt;
onpopstate - When the window’s history changes&lt;br&gt;
onshow - A  element is shown as a context menu&lt;br&gt;
onstorage - A Web Storage area is updated&lt;br&gt;
ontoggle - The user opens or closes the  element&lt;br&gt;
onwheel - Mouse wheel rolls up or down over an element&lt;br&gt;
ontouchcancel - Screen touch is interrupted&lt;br&gt;
ontouchend - User finger is removed from a touch screen&lt;br&gt;
ontouchmove - A finger is dragged across the screen&lt;br&gt;
ontouchstart - Finger is placed on touch screen&lt;br&gt;




&lt;/p&gt;

&lt;h3&gt;
  
  
  Asynchronous JS and Error handling
&lt;/h3&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;



&lt;p&gt;SetTimeout will wait foo seconds and then execute the action. SetInterval will execute this same action every foo seconds.&lt;br&gt;
Both can be inline or multiline, I recommend using multiline 99% of the time. It's important to notice that they work in milliseconds. &lt;/p&gt;

&lt;p&gt;SetTimeout:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(){&lt;/span&gt;
    &lt;span class="nf"&gt;alert&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello World!&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;2000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 2 seconds &lt;/span&gt;

&lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(){&lt;/span&gt; &lt;span class="nf"&gt;alert&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;The fifth episode of the series&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;3000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;SetInterval:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;setInterval&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nf"&gt;alert&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;I want to show you another Javascript trick:&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 

&lt;span class="nf"&gt;setInterval&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nf"&gt;alert&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;How to work with SetTimeout and SetInterval&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);},&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;



&lt;ul&gt;
&lt;li&gt;If you want to remove the first delay you have to add code a first time out of the function. I recommend you save this code in a separate function you can call whenever you need. &lt;a href="https://dev.to/devlorenzo/js-settimeout-and-setinterval-1pbf"&gt;Continue reading here&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;





&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;First, it's important to notice that a majority of backend actions have an unknown result, we don't know if it will work when we write our code. So we always have to write two different codes, one if the action works, another if the action results in an error. This is exactly how a try/catch work, we submit a code to try, if it works code continues, if it doesn't we catch the error (avoiding the app crashing) and run another code. This is a very common thing we don't only use in web development (also in Android app development with java for example). &lt;/p&gt;

&lt;h4&gt;
  
  
  Try / Catch
&lt;/h4&gt;



&lt;pre class="highlight javascript"&gt;&lt;code&gt;  &lt;span class="k"&gt;try&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="c1"&gt;// Try to run this code &lt;/span&gt;
 &lt;span class="c1"&gt;// For example make a request to the server&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="k"&gt;catch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;e&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;e&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="c1"&gt;// if any error, Code throws the error&lt;/span&gt;
 &lt;span class="c1"&gt;// For example display an error message to the user&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;



&lt;h4&gt;
  
  
  Promises
&lt;/h4&gt;

&lt;p&gt;The big problem with try/catch is that when you have to nest it (and you will have), it's really messy and difficult to read and write. So Javascript support promises with async functions:&lt;/p&gt;

&lt;p&gt;Syntax: new Promise (executor)&lt;br&gt;
executor= (accept, reject) =&amp;gt;{}&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;asyncronus_function&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;number&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Promise&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;accept&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;reject&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;
            &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="p"&gt;})&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;This function returns a promise object.&lt;br&gt;
If function end well we return a accept(), otherwise reject()&lt;br&gt;
&lt;a href="https://dev.to/devlorenzo/js-how-to-handle-errors-fi6"&gt;More here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Back to Top - 🔝&lt;/p&gt;


&lt;h2&gt;
  
  
  Projects ideas to become a javascript master &lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Projects ideas to become a javascript master 🚀 Resource compilation 💥 + Giveaway⚡&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Apr 10 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#programming&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#beginners&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;
&lt;br&gt;
a) &lt;a href="https://dev.to/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k"&gt;General (for beginners)&lt;/a&gt;

&lt;ol&gt;
&lt;li&gt;Converters&lt;/li&gt;
&lt;li&gt;Word Counter&lt;/li&gt;
&lt;li&gt;Timer / Clock&lt;/li&gt;
&lt;li&gt;Random password generator&lt;/li&gt;
&lt;li&gt;Calculator&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;b) &lt;a href="https://dev.to/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k"&gt;Games&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Guess the number&lt;/li&gt;
&lt;li&gt;Math time!&lt;/li&gt;
&lt;li&gt;Other Games&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;c) &lt;a href="https://dev.to/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k"&gt;Social &amp;amp; Websites&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Log-in, Sign-up&lt;/li&gt;
&lt;li&gt;Filter&lt;/li&gt;
&lt;li&gt;To-Do List&lt;/li&gt;
&lt;li&gt;Social&lt;/li&gt;
&lt;li&gt;Portfolio&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://dev.to/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k"&gt;Open the post&lt;/a&gt; for more info about each project!&lt;/p&gt;

&lt;p&gt;Back to Top - 🔝&lt;/p&gt;


&lt;h2&gt;
  
  
  Other resources:&lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;
  Table of content
  &lt;ul&gt;
&lt;li&gt;My cheat Sheet&lt;/li&gt;
&lt;li&gt;Projects ideas to become a javascript master &lt;/li&gt;
&lt;li&gt;
Other resources

&lt;ol&gt;
&lt;li&gt;Complete Javascript cheat sheets&lt;/li&gt;
&lt;li&gt;JS promises&lt;/li&gt;
&lt;li&gt;JS Arrays&lt;/li&gt;
&lt;li&gt;JS loops&lt;/li&gt;
&lt;li&gt;Preprocessor&lt;/li&gt;
&lt;li&gt;CoffeScript&lt;/li&gt;
&lt;li&gt;EJS&lt;/li&gt;
&lt;li&gt;Babel&lt;/li&gt;
&lt;li&gt;JS Frameworks &amp;amp; Libraries&lt;/li&gt;
&lt;li&gt;Angular&lt;/li&gt;
&lt;li&gt;Vue&lt;/li&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;JQuery&lt;/li&gt;
&lt;li&gt;Others&lt;/li&gt;
&lt;li&gt;
Node
&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;





&lt;/p&gt;
&lt;h3&gt;
  
  
  Complete JS cheat sheets:&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu4flymw2rjnrivyz5xrq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu4flymw2rjnrivyz5xrq.png" alt="image" width="586" height="126"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://devhints.io/es6" rel="noopener noreferrer"&gt;By dev hints&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb830syxoi2lo4qtlv5pa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb830syxoi2lo4qtlv5pa.png" alt="image" width="399" height="118"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Incredible resource --&amp;gt; &lt;a href="https://websitesetup.org/javascript-cheat-sheet/" rel="noopener noreferrer"&gt;By website setup&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://websitesetup.org/wp-content/uploads/2020/09/Javascript-Cheat-Sheet.pdf" rel="noopener noreferrer"&gt;PDF Version&lt;/a&gt; &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Two Others:&lt;br&gt;
&lt;a href="https://overapi.com/javascript" rel="noopener noreferrer"&gt;By overapi&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://htmlcheatsheet.com/js/" rel="noopener noreferrer"&gt;By HTML cheat sheet.com - Interactive&lt;/a&gt;&lt;/p&gt;


&lt;h4&gt;
  
  
  JS promises (Asynchronous JS):&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://dev.to/devlorenzo/js-how-to-handle-errors-fi6"&gt;Dev.to article&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href="https://dev.to/devlorenzo/js-settimeout-and-setinterval-1pbf"&gt;Dev.to article&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fixczevn204yxjud70pb1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fixczevn204yxjud70pb1.png" alt="image" width="410" height="185"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.codecademy.com/learn/introduction-to-javascript/modules/javascript-promises/cheatsheet" rel="noopener noreferrer"&gt;By codecadamy&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  JS Arrays: &lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj334aq9w8eci9ickpl0t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj334aq9w8eci9ickpl0t.png" alt="image" width="800" height="96"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://devhints.io/js-array" rel="noopener noreferrer"&gt;By dev hints&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  JS Loops:&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6jhf0fjiwwynoucb0qbr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6jhf0fjiwwynoucb0qbr.png" alt="image" width="451" height="164"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.codecademy.com/learn/introduction-to-javascript/modules/learn-javascript-loops/cheatsheet" rel="noopener noreferrer"&gt;By codecademy&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  JS preprocessor:&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;h5&gt;
  
  
  CoffeeScript:&lt;a&gt;&lt;/a&gt;
&lt;/h5&gt;

&lt;p&gt;&lt;a href="https://coffeescript.org/" rel="noopener noreferrer"&gt;CoffeeScript website&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F99f33sq8sx5st9a9chc5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F99f33sq8sx5st9a9chc5.png" alt="image" width="312" height="101"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Others:&lt;br&gt;
&lt;a href="https://karloespiritu.github.io/cheatsheets/coffeescript/" rel="noopener noreferrer"&gt;At karloeaspirity.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://autotelicum.github.io/Smooth-CoffeeScript/CoffeeScript%20Quick%20Ref.pdf" rel="noopener noreferrer"&gt;Quick reference - By autotelicum - PDF Version&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://awsm-tools.com/code/coffee2js" rel="noopener noreferrer"&gt;JS to CoffeeScript&lt;/a&gt;&lt;/p&gt;


&lt;h5&gt;
  
  
  EJS:&lt;a&gt;&lt;/a&gt;
&lt;/h5&gt;

&lt;p&gt;&lt;a href="https://ejs.co/" rel="noopener noreferrer"&gt;EJS website&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://ejs.co/#docs" rel="noopener noreferrer"&gt;EJS docs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffgan5wm4t3czx670ofu8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffgan5wm4t3czx670ofu8.png" alt="image" width="800" height="75"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://onecompiler.com/cheatsheets/ejs-embedded-javascript-templates" rel="noopener noreferrer"&gt;At one compiler&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gist.github.com/cmugla/daf2ab86937b9983c30f3724914644da" rel="noopener noreferrer"&gt;Or at GitHub&lt;/a&gt;&lt;/p&gt;


&lt;h5&gt;
  
  
  Babel:&lt;a&gt;&lt;/a&gt;
&lt;/h5&gt;

&lt;p&gt;&lt;a href="https://babeljs.io/" rel="noopener noreferrer"&gt;Babel website&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://babeljs.io/docs/en/" rel="noopener noreferrer"&gt;Babel docs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzfj0wkggbwq0l1y27ynp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzfj0wkggbwq0l1y27ynp.png" alt="image" width="151" height="86"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://karloespiritu.github.io/cheatsheets/babel/" rel="noopener noreferrer"&gt;By karloespiritu.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://medium.com/@housecor/babel-6-cheat-sheet-7344f7936f2d" rel="noopener noreferrer"&gt;Or at Medium&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  JavaScript-based Frameworks &amp;amp; Libraries:&lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.codeinwp.com/blog/angular-vs-vue-vs-react/" rel="noopener noreferrer"&gt;Article Angular vs vue vs react at codeinwp.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9qzrnkchpttnat5dce8h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9qzrnkchpttnat5dce8h.png" alt="image" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hackr.io/blog/best-javascript-frameworks" rel="noopener noreferrer"&gt;Best Javascript Frameworks - article at hackr.io&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Angular&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffuapemkwx3y6g45wvnt4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffuapemkwx3y6g45wvnt4.png" alt="image" width="230" height="73"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://angular.io/guide/cheatsheet" rel="noopener noreferrer"&gt;By angular.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkgb8ykddysmlydjnj262.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkgb8ykddysmlydjnj262.png" alt="image" width="381" height="187"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://devhints.io/angularjs" rel="noopener noreferrer"&gt;By dev hints&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  Vue&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftfrigdgnfc3o06ozqqsp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftfrigdgnfc3o06ozqqsp.png" alt="image" width="800" height="109"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.vuemastery.com/pdf/Vue-Essentials-Cheat-Sheet.pdf" rel="noopener noreferrer"&gt;By vue mastery&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Falpgv7qgqrbzviy2brxn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Falpgv7qgqrbzviy2brxn.png" alt="image" width="800" height="127"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://devhints.io/vue" rel="noopener noreferrer"&gt;By dev hints&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://marozed.com/vue-cheatsheet" rel="noopener noreferrer"&gt;Other - By marozed&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  React&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fekeqhraf5y8l5e6ixec3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fekeqhraf5y8l5e6ixec3.png" alt="image" width="772" height="162"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://devhints.io/react" rel="noopener noreferrer"&gt;By dev hints&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Others:&lt;br&gt;
&lt;a href="https://reactcheatsheet.com/" rel="noopener noreferrer"&gt;By react cheat sheet.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/typescript-cheatsheets/react" rel="noopener noreferrer"&gt;At GitHub: React + Typescript cheat sheet&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  JQuery&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://gist.github.com/joelrojo/c54765a748cd87a395a2b865359d6add" rel="noopener noreferrer"&gt;AJAX intro + cheat sheet at GitHub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv2ry4ka9vndpmq1bqx8r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv2ry4ka9vndpmq1bqx8r.png" alt="image" width="800" height="53"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://oscarotero.com/jquery/" rel="noopener noreferrer"&gt;By ascarotero.com&lt;/a&gt; - Really well done&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5l5zoteatxssinlbi5jx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5l5zoteatxssinlbi5jx.png" alt="image" width="715" height="200"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://websitesetup.org/wp-content/uploads/2017/01/wsu-jquery-cheat-sheet.pdf" rel="noopener noreferrer"&gt;By Website Setup - PDF Version&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjrvizdvoulfumnpun78e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjrvizdvoulfumnpun78e.png" alt="image" width="800" height="509"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://makeawebsitehub.com/jquery-mega-cheat-sheet/" rel="noopener noreferrer"&gt;By make website hub&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://makeawebsitehub.com/wp-content/uploads/2015/09/jquery-mega-cheat-sheet-Printable.pdf" rel="noopener noreferrer"&gt;PDF Version&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgir05mvl85rpzzy1k053.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgir05mvl85rpzzy1k053.png" alt="image" width="800" height="418"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.templatetoaster.com/jquery-cheat-sheet/" rel="noopener noreferrer"&gt;Article about top 10 jquery cheat sheets&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://overapi.com/jquery" rel="noopener noreferrer"&gt;Or by over API&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  Others&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;h5&gt;
  
  
  Ember.js:
&lt;/h5&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F96rx2e1qy125my1f4x07.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F96rx2e1qy125my1f4x07.png" alt="image" width="324" height="308"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.emberjs.com/" rel="noopener noreferrer"&gt;Website&lt;/a&gt;&lt;/p&gt;
&lt;h5&gt;
  
  
  Meteor:
&lt;/h5&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiuvus5pmet1og0aw6emy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiuvus5pmet1og0aw6emy.png" alt="image" width="800" height="385"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.meteor.com/" rel="noopener noreferrer"&gt;Website&lt;/a&gt;&lt;/p&gt;
&lt;h5&gt;
  
  
  Mithril:
&lt;/h5&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1zgxppfd0ma52qy9nuk1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1zgxppfd0ma52qy9nuk1.png" alt="image" width="545" height="140"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://mithril.js.org/" rel="noopener noreferrer"&gt;Website&lt;/a&gt;&lt;/p&gt;
&lt;h5&gt;
  
  
  Node
&lt;/h5&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqf4hvrcqmplrdjmbdqyd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqf4hvrcqmplrdjmbdqyd.png" alt="image" width="590" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://nodejs.org/en/" rel="noopener noreferrer"&gt;Website&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  Other Resources: &lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Advanced Topics
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;How Browsers Work: Behind the scenes of modern web browsers&lt;/li&gt;
&lt;li&gt;Learning Advanced JavaScript by John Resig&lt;/li&gt;
&lt;li&gt;JavaScript Advanced Tutorial by HTML Dog&lt;/li&gt;
&lt;li&gt;WebGL Fundamentals&lt;/li&gt;
&lt;li&gt;Learning JavaScript Design Patterns by Addy Osmani&lt;/li&gt;
&lt;li&gt;Intro to Computer Science in JavaScript&lt;/li&gt;
&lt;li&gt;Immutable data structures for JavaScript&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  Libraries/Frameworks/Tools
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Introduction to React video&lt;/li&gt;
&lt;li&gt;React Interview Questions&lt;/li&gt;
&lt;li&gt;JavaScript Promises: A Tutorial with Examples&lt;/li&gt;
&lt;li&gt;Khan Academy: Making webpages interactive with jQuery&lt;/li&gt;
&lt;li&gt;A Beginner’s Guide To Grunt: Build Tool for JavaScript&lt;/li&gt;
&lt;li&gt;Getting Started with Underscore.js&lt;/li&gt;
&lt;li&gt;jQuery Course by Code School&lt;/li&gt;
&lt;li&gt;Thinkster.io Courses on React and Angular&lt;/li&gt;
&lt;li&gt;The Languages And Frameworks You Should Learn In 2016&lt;/li&gt;
&lt;li&gt;ES6 Tools List on GitHub&lt;/li&gt;
&lt;li&gt;Getting Started with Redux&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  Server-side JavaScript
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Real-time Web with Node.js Course by Code School&lt;/li&gt;
&lt;li&gt;NodeSchool Course&lt;/li&gt;
&lt;li&gt;Node.js First Look on Lynda&lt;/li&gt;
&lt;li&gt;All about NodeJS Course on Udemy&lt;/li&gt;
&lt;li&gt;Server-side Development with NodeJS Course on Coursera&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://medium.com/coderbyte/50-resources-to-help-you-start-learning-javascript-in-2017-4c70b222a3b9" rel="noopener noreferrer"&gt;Source (with links) - 50 resources to help you start learning JavaScript - By Daniel Borowski - At Medium&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Read also:&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Projects ideas to become a javascript master 🚀 Resource compilation 💥 + Giveaway⚡&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Apr 10 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#programming&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#beginners&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/finally-how-to-understand-math-awesome-resource-list-4end" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Finally - How to understand math - Awesome resource list 🚀&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Mar 30 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#beginners&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F370225%2F60416eff-f1ff-4a29-a5c9-2a13df7845c8.jpeg" alt="" width="320" height="320"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/25-udemy-courses-worth-your-money-time-2e5j" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;25 Udemy Courses Worth Your Money &amp;amp; Time 🚀&lt;/h2&gt;
      &lt;h3&gt;Garvit Motwani for World In Dev ・ Apr 22 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#beginners&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;Thanks for reading and Happy coding ❤&lt;/p&gt;




&lt;p&gt;Full Compilation of cheat sheets:&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;h2&gt;
  
  
  ⚡Giveaway ⚡
&lt;/h2&gt;

&lt;p&gt;We are giving away any course you need on Udemy. Any price any course.&lt;br&gt;
Steps to enter the giveaway&lt;br&gt;
--&amp;gt; React to this post&lt;br&gt;
--&amp;gt; &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;Subscribe to our Newsletter&lt;/a&gt; &amp;lt;-- Very important&lt;br&gt;
--&amp;gt; &lt;a href="https://twitter.com/DevLorenzo1" rel="noopener noreferrer"&gt;Follow me on Twitter&lt;/a&gt; &amp;lt;-- x2 Chances of winning&lt;/p&gt;

&lt;p&gt;The winner will be announced on May 1, Via Twitter&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;Subscribe to my Newsletter!&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;The PDF version of this article!!!&lt;/li&gt;
&lt;li&gt;Monday: Weekly digeeeeeests!!!&lt;/li&gt;
&lt;li&gt;Wednesday: Discussions and dev insights - We debate around developer lifes - Examples: The importance of coffee behind development / If you weren't a dev, you'd be a...​&lt;/li&gt;
&lt;li&gt;Gifts, lots of 🎁. We send cheat sheets, coding advice, productivity tips, and many more!&lt;/li&gt;
&lt;li&gt;That's --&amp;gt; free &amp;lt;-- and you help me!&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;PS: It took me around 10 hours to complete the article - So please remember the &lt;strong&gt;like ❤️&lt;/strong&gt; and &lt;strong&gt;super like 🦄&lt;/strong&gt; - Let's reach the top of the month this time 🚀&lt;/p&gt;

&lt;p&gt;Back to Top - 🔝&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>productivity</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Projects ideas to become a javascript master 🚀 Resource compilation 💥 + Giveaway⚡</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Sat, 10 Apr 2021 13:17:18 +0000</pubDate>
      <link>https://dev.to/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k</link>
      <guid>https://dev.to/worldindev/10-projects-to-become-a-javascript-master-giveaway-2o4k</guid>
      <description>&lt;p&gt;&lt;code&gt;Hello World!&lt;/code&gt; Today I wanted to share with you 10 projects you can build to be from zero to hero in javascript!&lt;/p&gt;

&lt;p&gt;🔖 - Bookmark the article to save it &lt;em&gt;and&lt;/em&gt; &lt;strong&gt;remember the like ❤️ and maybe super like🦄&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Read also:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/400-javascript-interview-questions-with-answers-2fcj" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;400+ JavaScript Interview Questions 🎓 With Answers 🌠&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Apr 27 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#career&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;h2&gt;
  
  
  ⚡Giveaway ⚡
&lt;/h2&gt;

&lt;p&gt;We are giving away any course you need on Udemy. Any price any course.&lt;br&gt;
Steps to enter the giveaway&lt;br&gt;
--&amp;gt; React to this post&lt;br&gt;
--&amp;gt; &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;Subscribe to our Newsletter&lt;/a&gt; &lt;strong&gt;&amp;lt;--&lt;/strong&gt; Very important&lt;/p&gt;



&lt;p&gt;
  Table of content
  &lt;p&gt;a) General (for beginners)&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Converters&lt;/li&gt;
&lt;li&gt;Word Counter&lt;/li&gt;
&lt;li&gt;Timer / Clock&lt;/li&gt;
&lt;li&gt;Random password generator&lt;/li&gt;
&lt;li&gt;Calculator&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;b) Games&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Guess the number&lt;/li&gt;
&lt;li&gt;Math time!&lt;/li&gt;
&lt;li&gt;Other Games&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;c) Social &amp;amp; Websites&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Log-in, Sign-up&lt;/li&gt;
&lt;li&gt;Fitler&lt;/li&gt;
&lt;li&gt;To-Do List&lt;/li&gt;
&lt;li&gt;Social&lt;/li&gt;
&lt;li&gt;Portfolio&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Hey, remember that I have a &lt;a href="https://chipper-motivator-3112.ck.page/05710ea3d3" rel="noopener noreferrer"&gt;newlsetter&lt;/a&gt;!&lt;br&gt;
&lt;/p&gt;

&lt;br&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  a) General --&amp;gt; For beginners &lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Converters &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc0hbzclx0tuzmkfo990w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc0hbzclx0tuzmkfo990w.png" alt="image" width="480" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I don't have to say a lot in reality for this category. Just build something that with a given input, convert it into a nice-looking output, for us to gain the time of doing it manually 🙃. If you do a full webpage around it, that's always a plus, but you can even do a really easy javascript code. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;For example, I built a currency converter, it was one of my first JS projects!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://codepen.io/r4ndomw4lk/pen/KZyEBY" rel="noopener noreferrer"&gt;A CodePen - JavaScript: Currency Calculator&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  2. Word counter &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg3tto05qxadnhuenmwvw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg3tto05qxadnhuenmwvw.png" alt="image" width="640" height="473"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Just another easy fun project, build something count the number of words and characters in a text. Then the goal is to give as many stats as possible, showing reading and speaking time, keywords and their frequency, and others, be creative!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://codesource.io/building-a-word-counter-in-javascript/" rel="noopener noreferrer"&gt;An Article - Building a Word Counter in JavaScript&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  3. Timer / Clock &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feuy7bve2sxfmehg3odz8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feuy7bve2sxfmehg3odz8.png" alt="image" width="400" height="300"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That one also is quite easy, just try to build a basic functionality around time, like a timer, a digital clock, a scheduled alarm... And if you have time and willingness to learn, why not doing the entire clock app, maybe on an entire website!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.codesdope.com/blog/article/how-to-create-a-digital-clock-using-javascript/" rel="noopener noreferrer"&gt;An Article - How to Create a Digital Clock using JavaScript&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  4. Random password generator &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu4pvqhxj521n456jhnso.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu4pvqhxj521n456jhnso.png" alt="image" width="316" height="112"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Keep your learnings secure, you can create a random password generator in 10 minutes in reality. But like so many other projects on this list, they are fun to do only if you make them yours by adding special features! I think you can go deep into customization possibilities with this one. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=fOvYE1i_IiY" rel="noopener noreferrer"&gt;A Video - Strong Random Password Generator Mini Project using Html CSS &amp;amp; Javascript | Password Generator App - by &lt;br&gt;
Online Tutorials&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  5. Calculator &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fup6qg743pmrsv54nnaov.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fup6qg743pmrsv54nnaov.png" alt="image" width="292" height="453"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Now you can build something more challenging, a fully working calculator. That should not be too difficult, everyone knows how a calculator works. Just try to be original, adding features obviously. &lt;a href="https://dev.to/worldindev/finally-how-to-understand-math-awesome-resource-list-4end"&gt;Make math fun!&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.freecodecamp.org/news/how-to-build-an-html-calculator-app-from-scratch-using-javascript-4454b8714b98/" rel="noopener noreferrer"&gt;A freecodecamp Article - How to build an HTML calculator app from scratch using JavaScript&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://codepen.io/yudizsolutions/pen/poReVdw" rel="noopener noreferrer"&gt;Another Source - A CodePen - "Neumorphism calculator with dark mode switch"&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  b) Games &lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;h3&gt;
  
  
  5. Guess the number &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjcu6ml6laognmkgqur9g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjcu6ml6laognmkgqur9g.png" alt="image" width="200" height="200"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That's a very famous and easy game, you generate a random number from 0 to 50, the user has to guess it. And you give him some hints in the process (lower or greater). Nothing extraordinary, but you're starting to make great progress! &lt;/p&gt;

&lt;p&gt;&lt;a href="https://opensource.com/article/21/1/learn-javascript" rel="noopener noreferrer"&gt;Learn JavaScript by writing a guessing game&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  6. Math questions &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb6xw2sb8elt35m6e9jlz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb6xw2sb8elt35m6e9jlz.png" alt="image" width="275" height="183"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;That can be fun, you create a game that generates random math questions (like 1304+222), with an open answer or a list of different propositions for the user. The code automatically checks if the result is right or wrong. Then you can do a scorekeeper, a timer, let the user set a difficulty, add a leaderboard, and make it even more customizable allowing the user to filter questions!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://codereview.stackexchange.com/questions/84413/maths-qa-game-in-javascript" rel="noopener noreferrer"&gt;Stack Exchange - Code Review - Maths Q&amp;amp;A game in JavaScript&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  7. Other games &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv460skp93gnhmnthzqcb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv460skp93gnhmnthzqcb.png" alt="image" width="300" height="168"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;--&amp;gt; Card Game, Rock-Paper-Scissors, Tic tac toe, Pong game...&lt;/p&gt;

&lt;p&gt;Actually, you can build lots of games with javascript, but I think these four do quite a lot in making you progress in javascript. A card game is fun to do and can be easily played directly on the console, without adding the full visual stuff. For example, I built a blackjack game completely playable from the console. Then &lt;a href="https://codepen.io/DevLorenzo/pen/ExgpPEO" rel="noopener noreferrer"&gt;Rock paper scissor&lt;/a&gt; and &lt;a href="https://codepen.io/DevLorenzo/pen/RwoNOPZ" rel="noopener noreferrer"&gt;Tic tac toe&lt;/a&gt;. You can do the first two players game, or even build a bot (more for the tic tac toe game in reality) to allow even a single user to play. &lt;br&gt;
The &lt;a href="https://codepen.io/gdube/pen/JybxxZ" rel="noopener noreferrer"&gt;pong game&lt;/a&gt; can allow you to do a more advanced 2d game with real-time updates (animations).&lt;/p&gt;
&lt;h2&gt;
  
  
  c) Social &amp;amp; Websites &lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;h3&gt;
  
  
  8. Log-in, Sign-up... &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ckeuagbniwofkaaljt5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ckeuagbniwofkaaljt5.png" alt="image" width="800" height="400"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Now we start with some more social / website-focused content. First I suggest you be able to quickly write a nice looking and well-performing Log-in / Sign-up system for websites, I'm sure you will need it someday, and then you will remember this training, and you will manage the situation like a pro!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=l96bQuvUFto" rel="noopener noreferrer"&gt;A video by FrontendTips - Login / Signup panel in css and javascript (With source code)&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  9. Filter &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fljn61r6uy7puk4tolr8z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fljn61r6uy7puk4tolr8z.png" alt="image" width="600" height="315"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;That's easy as important to know how to do a basic filter. in pure javascript, you can need it to filter elements in an array. In real-life examples, you need to filter comments, posts, articles, videos... For example you can build, using the dev.to API, a webpage that allow the user to filter the articles. You have infinite way to filter articles!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.w3schools.com/howto/howto_js_filter_lists.asp" rel="noopener noreferrer"&gt;HOW TO Filter/Search List- W3school&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  11. To-do list &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv9i1b2w94qerqhqqxa2z.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv9i1b2w94qerqhqqxa2z.gif" alt="giphy" width="480" height="360"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;The to-do list. How famous... Do you know notion? I love this app a lot, but I'm sure that you can improve the user experience. Try building something that makes planning a fun thing!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.w3schools.com/howto/howto_js_todolist.asp" rel="noopener noreferrer"&gt;HOW TO create a to-do list - W3School&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  10. Social &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Now let's get to the really serious stuff, with javascript and web development you can build really complex things, so why not build a social with front-end and back-end coded in javascript? &lt;/p&gt;

&lt;p&gt;&lt;a href="https://pusher.com/tutorials/social-network-javascript" rel="noopener noreferrer"&gt;Build a simple social network with javascript - pusher.com&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  12. Portfolio &lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Hey, I actually wrote a full article about that, whyyyy not checking it out right now? After leaving a like to this article for sure! &lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;p&gt;
  Other useful sources for &lt;strong&gt;you&lt;/strong&gt;
  &lt;br&gt;
&lt;a href="https://skillcrush.com/blog/projects-you-can-do-with-javascript/" rel="noopener noreferrer"&gt;20+ Projects You Can Do With JavaScript&lt;/a&gt;&lt;br&gt;
&lt;a href="https://jsbeginners.com/javascript-projects-for-beginners/" rel="noopener noreferrer"&gt;100+ JavaScript Projects for Beginners!&lt;/a&gt;&lt;br&gt;
&lt;a href="https://thesmartcoder.dev/9-awesome-projects-you-can-build-with-vanilla-javascript/#chapter-10" rel="noopener noreferrer"&gt;40+ JavaScript Projects For Your Portfolio&lt;/a&gt;&lt;br&gt;
&lt;a href="https://mikkegoes.com/javascript-projects-for-beginners/" rel="noopener noreferrer"&gt;17 JAVASCRIPT PROJECTS YOU CAN BUILD TO PERFECT YOUR CODING SKILLS&lt;/a&gt;&lt;br&gt;
&lt;a href="https://github.com/florinpop17/app-ideas" rel="noopener noreferrer"&gt;App ideas - At GitHub&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=3gKhcPLOFdA" rel="noopener noreferrer"&gt;5 Vanilla JavaScript Projects for Beginners&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.freecodecamp.org/news/javascript-projects-for-beginners/" rel="noopener noreferrer"&gt;40 JavaScript Projects for Beginners – Easy Ideas to Get Started Coding JS&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=3PHXvlpOkf4" rel="noopener noreferrer"&gt;Build 15 JavaScript Projects - Vanilla JavaScript Course&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=dtKciwk_si4" rel="noopener noreferrer"&gt;10 JavaScript Projects in 10 Hours - Coding Challenge 🔥&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.codementor.io/javascript-projects" rel="noopener noreferrer"&gt;Learn programming&lt;br&gt;
with curated JavaScript projects - codementor.io&lt;/a&gt;&lt;br&gt;


&lt;/p&gt;




&lt;p&gt;Thanks for reading and Happy coding ❤&lt;/p&gt;

&lt;p&gt;Recommended readings:&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F370225%2F60416eff-f1ff-4a29-a5c9-2a13df7845c8.jpeg" alt="" width="320" height="320"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/8-javascript-tips-tricks-that-no-one-teaches-24g1" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;8 JavaScript Tips &amp;amp; Tricks That No One Teaches 🚀&lt;/h2&gt;
      &lt;h3&gt;Garvit Motwani for World In Dev ・ Apr 6 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#html&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#es6&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;h2&gt;
  
  
  ⚡Giveaway ⚡
&lt;/h2&gt;

&lt;p&gt;We are giving away any course you need on Udemy. Any price any course.&lt;br&gt;
Steps to enter the giveaway&lt;br&gt;
--&amp;gt; React to this post&lt;br&gt;
--&amp;gt; &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;Subscribe to our Newsletter&lt;/a&gt; &lt;strong&gt;&amp;lt;--&lt;/strong&gt; Very important&lt;br&gt;
--&amp;gt; &lt;a href="https://twitter.com/DevLorenzo1" rel="noopener noreferrer"&gt;Follow me on Twitter&lt;/a&gt; &amp;lt;-- x2 Chances of winning&lt;/p&gt;

&lt;p&gt;The winner will be announced on May 1, Via Twitter&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;Subscribe to my Newsletter!&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;A loooong, and fun, weekly recap for you &lt;br&gt;
Free PDF version of my articles&lt;br&gt;
Highly customizable inbox&lt;br&gt;
That's --&amp;gt; free &amp;lt;-- and you help me!&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>programming</category>
      <category>beginners</category>
    </item>
    <item>
      <title>World in Dev Digest - Top Articles and Tech Events This Week - 23/3/2021</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Tue, 23 Mar 2021 16:52:11 +0000</pubDate>
      <link>https://dev.to/worldindev/dev-digest-23-03-la5</link>
      <guid>https://dev.to/worldindev/dev-digest-23-03-la5</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;“The difference between stupidity and genius, is that genius has its limits” - Masashi Kishomoto&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  3 articles to read today at dev.to:
&lt;/h2&gt;

&lt;h4&gt;
  
  
  --&amp;gt; General article:
&lt;/h4&gt;

&lt;p&gt;15 tips and tricks for javascript devs working with the DevTool:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/asayerio_techblog" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571683%2Fae7b715a-13e1-408b-9405-14b4d13217cc.png" alt="asayerio_techblog"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/asayerio_techblog/15-devtool-secrets-for-javascript-developers-5g46" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;15 DevTool Secrets for JavaScript Developers&lt;/h2&gt;
      &lt;h3&gt;OpenReplay Tech Blog ・ Mar 22 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#performance&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#tutorial&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;
&lt;br&gt;
By @asayerio_techblog

&lt;h4&gt;
  
  
  --&amp;gt; A Technical article:
&lt;/h4&gt;

&lt;p&gt;A small but nice article wrote to understand oop in simple terms.&lt;br&gt;
In two lines the definitions of an object, a class, Encapsulation, Abstraction, Polymorphism, Inheritance...&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/rahxuls" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F507105%2F57a70e21-66e6-40b2-a2ee-6f34062d9da6.png" alt="rahxuls"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/rahxuls/explain-me-oop-s-concept-in-simple-terms-40e8" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Explain me OOP's concept in simple terms&lt;/h2&gt;
      &lt;h3&gt;Rahul ・ Mar 23 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#oop&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#programming&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;
&lt;br&gt;
By @rahxuls

&lt;h4&gt;
  
  
  --&amp;gt; A video:
&lt;/h4&gt;

&lt;p&gt;Cool video, nice music, excellent codepen sample, I don't say anything else...&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/ahmadbassamemran" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F161481%2F83b832d9-cc20-47c5-84c2-d1339d01056c.jpg" alt="ahmadbassamemran"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/ahmadbassamemran/creating-a-dark-light-toggle-mode-ui-design-3596" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Creating a Dark &amp;amp; Light Toggle Mode - UI Design&lt;/h2&gt;
      &lt;h3&gt;Ahmad Emran ・ Mar 23 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#css&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#showdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;
&lt;br&gt;
By @ahmadbassamemran




&lt;h2&gt;
  
  
  External article:
&lt;/h2&gt;

&lt;h4&gt;
  
  
  Git aliases
&lt;/h4&gt;

&lt;blockquote&gt;
&lt;p&gt;Everyone wants to work faster, easier and one way to achieve this is to simplify their daily tasks with simple scripts or with creating aliases to run long commands that they often forget or just tired of typing them over and over again.&lt;br&gt;
If you're not using any GUI for Git or using Visual Studio Code alongside Git you can definitely take advantage of the Git aliases to make things easier for you. If you want to learn how you can use Visual Studio Code with Git check out this article here:&lt;br&gt;
&lt;a href="https://devdojo.com/alexg/git-aliases" rel="noopener noreferrer"&gt;At devdojo&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Daily discussion:
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Most don't know, but a developer is someone who turns coffee into code. ☕&lt;/p&gt;
&lt;/blockquote&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;br&gt;
By @devlorenzo - me 🙃




&lt;h2&gt;
  
  
  Site of the day:
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;A front-end coding challenges site. You can create a challenge that you and other devs can participate in.&lt;br&gt;
&lt;a href="https://codier.io/" rel="noopener noreferrer"&gt;Codier.io&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Podcast episode of the day:
&lt;/h2&gt;

&lt;p&gt;Docker for Python Developers (2021 Edition):&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Docker is one of the core elements of developing Python applications in consistent ways as well as running them across different hardware universally. On this episode, you'll meet Peter McKee from Docker. He's here to catch us up on what's happening in the Docker universe for Python developers.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://talkpython.fm/episodes/show/308/docker-for-python-developers-2021-edition" rel="noopener noreferrer"&gt;By Talk Python to me&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Tech event of the day:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Note that this is not free content, although we will try to promote only free events if possible.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://event.technologyreview.com/emtech-digital-2021/" rel="noopener noreferrer"&gt;The age of implementation - MIT Technology Review's annual event on artificial intelligence&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;"Join EmTech Digital to stand on the shoulders of giants. Get insight from technology experts and industry leaders all along the innovation path. Learn about new developments and opportunities in AI. See examples of how it is solving complicated, real-world challenges and transforming the business landscape."&lt;/p&gt;




&lt;p&gt;Thanks for reading!&lt;/p&gt;

&lt;p&gt;Subscribe to our &lt;a href="https://chipper-motivator-3112.ck.page/05710ea3d3" rel="noopener noreferrer"&gt;newsletter&lt;/a&gt; to receive our weekly recap directly on your email!&lt;/p&gt;

&lt;p&gt;Join us on &lt;a href="https://discord.gg/aWS2YKk6" rel="noopener noreferrer"&gt;Discord&lt;/a&gt; to participate in hackathons with us / participate in our giveaways!&lt;/p&gt;

</description>
      <category>career</category>
      <category>beginners</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Best discounts for devs 💻 this month 💥🚀 to bookmark 🔖</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Wed, 17 Mar 2021 15:46:57 +0000</pubDate>
      <link>https://dev.to/lorenzoblog/best-discounts-for-devs-1683</link>
      <guid>https://dev.to/lorenzoblog/best-discounts-for-devs-1683</guid>
      <description>&lt;p&gt;&lt;code&gt;Hello world!&lt;/code&gt; In this post, I'm gonna show you the best discount for devs I used / founded useful. &lt;/p&gt;

&lt;p&gt;🔖 - Bookmark the article to save the list&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;And remember the like ❤ and maybe 🦄&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Best discounts for devs:
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1-  &lt;a href="https://chrome.google.com/webstore/detail/grepper/amaaokahonnfjjemodnpmeenfpnnbkco?hl=it" rel="noopener noreferrer"&gt;Programming hub premium&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;→ Code: "HOME95" / Lifetime pro version: full access to all the courses + tests and certificates of completition. Programming Hub is a very cool code learning mobile app with more than 50 courses.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7z5z1ddadh2n59se88od.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7z5z1ddadh2n59se88od.png" alt="image" width="547" height="767"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  2 - &lt;a href="https://store.acer.com/en-gb/special-offers" rel="noopener noreferrer"&gt;PC Acer&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa21gc3kbxvtxedi60hz3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa21gc3kbxvtxedi60hz3.png" alt="image" width="800" height="307"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;→ Acer discounts all around the planet for notebooks and desktops. Up to 200 dollars / 300 euros.  Very useful for buying a new pc, particularly for gaming. I bought the predator 300 around a month ago.&lt;/p&gt;




&lt;h3&gt;
  
  
  3 - &lt;a href="https://nordvpn.com/special/diagram/?utm_medium=affiliate&amp;amp;utm_term&amp;amp;utm_content&amp;amp;utm_campaign=off15&amp;amp;utm_source=aff49189" rel="noopener noreferrer"&gt;It’s NordVPN’s birthday — unbox your gift&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fehth8eps6l78c6h2a7du.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fehth8eps6l78c6h2a7du.png" alt="image" width="555" height="555"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;→ Buy a 2-year plan with 68% off and automatically get extra service time as a gift (+30-day money-back guarantee). Okay, I know that you hate NordVPN sponsors, and you can be sure I'm not one of those, but it's such a fantastic discount!&lt;/p&gt;




&lt;h3&gt;
  
  
  4 - &lt;a href="//discord.com"&gt;Discord discount&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fepmgorw02wg8l49jc64c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fepmgorw02wg8l49jc64c.png" alt="image" width="290" height="174"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;→ 16% on annual nitro subscription + 30% server bumping. Everyone knows discord, and how it's cool to have a personalized tag and animated icon. &lt;/p&gt;




&lt;h3&gt;
  
  
  5 - &lt;a href="https://chrome.google.com/webstore/detail/grepper/amaaokahonnfjjemodnpmeenfpnnbkco?hl=it" rel="noopener noreferrer"&gt;Miro student / Teacher discount&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyng3bapsiyqy1ushp07i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyng3bapsiyqy1ushp07i.png" alt="image" width="800" height="420"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;→ Miro is a very cool software that provides a board for us to work with. With the free plan, you can have up to three modifiable boards. But Education plan users can take advantage of the following features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unlimited active boards&lt;/li&gt;
&lt;li&gt;Unlimited external board viewers and commenters + unlimited &lt;/li&gt;
&lt;li&gt;Guest Editors&lt;/li&gt;
&lt;li&gt;Private boards &lt;/li&gt;
&lt;li&gt;Advanced Attention management&lt;/li&gt;
&lt;li&gt;Projects&lt;/li&gt;
&lt;li&gt;Custom Templates&lt;/li&gt;
&lt;li&gt;High-quality resolution export without a watermark&lt;/li&gt;
&lt;li&gt;Manual board backup&lt;/li&gt;
&lt;li&gt;Voting&lt;/li&gt;
&lt;li&gt;Timer&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For students and teachers, it's all free. &lt;a href="https://help.miro.com/hc/en-us/articles/360017730473-Education-Plan" rel="noopener noreferrer"&gt;Learn more here&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Other discounts for students in developing:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://education.github.com/pack" rel="noopener noreferrer"&gt;Github Student Developer Pack&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="http://www.adobe.com/in/creativecloud/buy/students.html" rel="noopener noreferrer"&gt;Adobe Creative Cloud&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://software.intel.com/en-us/qualify-for-free-software/student" rel="noopener noreferrer"&gt;Intel® Parallel Studio XE&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.xamarin.com/student" rel="noopener noreferrer"&gt;Xamarin IDE&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://bootstrapstudio.io/contact-us" rel="noopener noreferrer"&gt;Bootstrap Studio: Free for students&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://store.unity.com/products/unity-personal" rel="noopener noreferrer"&gt;Unity3D&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.sketchapp.com/store/edu/" rel="noopener noreferrer"&gt;Sketch&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.microsoft.com/en-in/education/products/office/default.aspx" rel="noopener noreferrer"&gt;Microsoft Office 365&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="http://www.amitk.co.in/blog/list-student-discounts-developers/" rel="noopener noreferrer"&gt;Source&lt;/a&gt; &lt;/p&gt;




&lt;p&gt;Other resources for students and devs:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/AchoArnold/discount-for-student-dev" rel="noopener noreferrer"&gt;GitHub Repo: Discounts for students&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/ripienaar/free-for-dev" rel="noopener noreferrer"&gt;GitHub Repo: Free softwares for devs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/sindresorhus/awesome" rel="noopener noreferrer"&gt;Check also: GitHub Repo - Awesome (list of resources for devs)&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Hope this helps!&lt;/p&gt;

&lt;p&gt;Comments other discounts!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;And remember the like! ❤ and maybe 🦄&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;Recommended reading:&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;p&gt;Linked article --&amp;gt; Check out other 5 incredible &lt;a href="https://dev.to/mikechrupcala/the-5-best-purchases-for-web-developers-with-discounts-43hg"&gt;dev discounts&lt;/a&gt; created by &lt;a href="https://dev.to/mikechrupcala"&gt;Michael Chrupcala&lt;/a&gt; 🚀&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/mikechrupcala" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571164%2F77287f2c-35a6-495e-a695-086401dd008d.jpg" alt="mikechrupcala"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/mikechrupcala/the-5-best-purchases-for-web-developers-with-discounts-43hg" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;5 Investments for Web Devs (with discounts!)&lt;/h2&gt;
      &lt;h3&gt;Michael Chrupcala ・ Mar 17 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#programming&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#beginners&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>showdev</category>
      <category>productivity</category>
      <category>career</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Terminal Cheat Sheet 🔥 - The most useful terminal commands 🚀</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Sat, 13 Mar 2021 14:34:54 +0000</pubDate>
      <link>https://dev.to/worldindev/the-most-useful-terminal-commands-how-to-work-with-directories-51l8</link>
      <guid>https://dev.to/worldindev/the-most-useful-terminal-commands-how-to-work-with-directories-51l8</guid>
      <description>&lt;p&gt;&lt;code&gt;Hello world!&lt;/code&gt; Here is a list of the basic terminal commands you should know by heart.&lt;/p&gt;

&lt;p&gt;🔖 - Bookmark the article to save the cheat sheet&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;And remember to smash that like button ❤️ and maybe 🦄&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F053fp0jns34vxhnjesrb.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F053fp0jns34vxhnjesrb.gif" alt="Alt Text" width="640" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You absolutely need to read that:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  Basics
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://git-scm.com/downloads" rel="noopener noreferrer"&gt;I love the git bash (I'm on windows)&lt;/a&gt; - version 4.4.23&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Git Bash emulates a bash environment on windows. It lets you use all git features in command line plus most of standard unix commands.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;3 basics commands to remember:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;Clear&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;type&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;clear&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;ctrl&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nf"&gt;l &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;windows&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Linux&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;Command&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nc"&gt;K &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;Mac&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;help&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;show&lt;/span&gt; &lt;span class="nx"&gt;all&lt;/span&gt; &lt;span class="nx"&gt;comands&lt;/span&gt;
&lt;span class="nx"&gt;help&lt;/span&gt; &lt;span class="nx"&gt;commandName&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;help&lt;/span&gt; &lt;span class="nx"&gt;about&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;specific&lt;/span&gt; &lt;span class="nx"&gt;command&lt;/span&gt;
&lt;span class="nx"&gt;ctrl&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nx"&gt;D&lt;/span&gt; &lt;span class="nx"&gt;or&lt;/span&gt; &lt;span class="nx"&gt;ctrl&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nx"&gt;C&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;exit&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Working with Directories:
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;ls&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;list&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;list&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;contents&lt;/span&gt; &lt;span class="nx"&gt;on&lt;/span&gt; &lt;span class="nx"&gt;your&lt;/span&gt; &lt;span class="nx"&gt;current&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt;
&lt;span class="nx"&gt;ls&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;la&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Give&lt;/span&gt; &lt;span class="nx"&gt;more&lt;/span&gt; &lt;span class="nx"&gt;information&lt;/span&gt; &lt;span class="nx"&gt;about&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;list&lt;/span&gt; 
&lt;span class="nx"&gt;pwd&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Print&lt;/span&gt; &lt;span class="nx"&gt;Working&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;Print&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;path&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;working&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt;
&lt;span class="nx"&gt;cd&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Change&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;Move&lt;/span&gt; &lt;span class="nx"&gt;between&lt;/span&gt; &lt;span class="nx"&gt;folders&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Relative&lt;/span&gt; &lt;span class="nc"&gt;Path &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;just&lt;/span&gt; &lt;span class="nx"&gt;folders&lt;/span&gt; &lt;span class="nx"&gt;directly&lt;/span&gt; &lt;span class="nx"&gt;contained&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;one&lt;/span&gt; &lt;span class="nx"&gt;you&lt;/span&gt; &lt;span class="nx"&gt;are&lt;/span&gt; &lt;span class="nx"&gt;currently&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;cd&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;firstDirectory&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;secondDirectory&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;FinalDirectory&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Absolute&lt;/span&gt; &lt;span class="nc"&gt;Path &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;search&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt; &lt;span class="nx"&gt;anywhere&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;pc&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;cd&lt;/span&gt; &lt;span class="p"&gt;..&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Go&lt;/span&gt; &lt;span class="nx"&gt;back&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt;
&lt;span class="nx"&gt;cd&lt;/span&gt; &lt;span class="o"&gt;~&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nx"&gt;home&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt;
&lt;span class="nx"&gt;mkdir&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;make&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;create&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;
&lt;span class="nx"&gt;mkdir&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;v&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Make&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;add&lt;/span&gt; &lt;span class="nx"&gt;lines&lt;/span&gt; &lt;span class="nx"&gt;that&lt;/span&gt; &lt;span class="nx"&gt;say&lt;/span&gt; &lt;span class="nx"&gt;you&lt;/span&gt; &lt;span class="nx"&gt;created&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt;
&lt;span class="nx"&gt;touch&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Create&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nf"&gt;file &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;or&lt;/span&gt; &lt;span class="nx"&gt;multiple&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="nx"&gt;or&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;touch&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;change&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nf"&gt;file &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;update&lt;/span&gt; &lt;span class="nx"&gt;when&lt;/span&gt; &lt;span class="nx"&gt;it&lt;/span&gt; &lt;span class="nx"&gt;was&lt;/span&gt; &lt;span class="nx"&gt;last&lt;/span&gt; &lt;span class="nx"&gt;modified&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;rm&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Remove&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;Delete&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nc"&gt;File &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;forever&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;rm&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;rf&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;Remove&lt;/span&gt; &lt;span class="nx"&gt;recursive&lt;/span&gt; &lt;span class="nx"&gt;force&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;Delete&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt; &lt;span class="nx"&gt;add&lt;/span&gt; &lt;span class="nx"&gt;all&lt;/span&gt; &lt;span class="nx"&gt;file&lt;/span&gt; &lt;span class="nx"&gt;nested&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;the&lt;/span&gt; &lt;span class="nf"&gt;directory &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;also&lt;/span&gt; &lt;span class="nx"&gt;other&lt;/span&gt; &lt;span class="nx"&gt;directories&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;rmdir&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;remove&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nf"&gt;directory &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;only&lt;/span&gt; &lt;span class="nx"&gt;work&lt;/span&gt; &lt;span class="nx"&gt;on&lt;/span&gt; &lt;span class="nx"&gt;empty&lt;/span&gt; &lt;span class="nx"&gt;folders&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;More readable way:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa2l2b5nh8r1bz0ao3r9i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa2l2b5nh8r1bz0ao3r9i.png" alt="image" width="800" height="501"&gt;&lt;/a&gt; &lt;/p&gt;


&lt;h2&gt;
  
  
  Basic commands:
&lt;/h2&gt;

&lt;p&gt;Write: &lt;code&gt;help&lt;/code&gt; to access&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3zeyhe4vkxkoxt2bea23.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3zeyhe4vkxkoxt2bea23.png" alt="image" width="733" height="700"&gt;&lt;/a&gt; &lt;/p&gt;
&lt;h2&gt;
  
  
  Git available commands:
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu9j4f06k34y3yi0bol2f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu9j4f06k34y3yi0bol2f.png" alt="image" width="800" height="675"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Write: &lt;code&gt;git --help&lt;/code&gt; to access&lt;/p&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faetgne4gsubcnyfw858k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faetgne4gsubcnyfw858k.png" alt="image" width="696" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Write: &lt;code&gt;git help -g&lt;/code&gt; to access&lt;/p&gt;



&lt;blockquote&gt;
&lt;p&gt;Extra: Writing &lt;code&gt;git help git&lt;/code&gt; the command line redirect you to a download with all the git bash available commands in a more readable way&lt;/p&gt;

&lt;p&gt;Type &lt;code&gt;git help -a&lt;/code&gt; to have access to a more advanced line by line commands description - Write q to exit&lt;/p&gt;
&lt;/blockquote&gt;



&lt;p&gt;Hope this helped!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;And remember to smash that like button ❤️ and maybe 🦄&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h3&gt;
  
  
  You added:
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;opens&lt;/span&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;zprofile&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nf"&gt;editing &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;zsh&lt;/span&gt; &lt;span class="nx"&gt;profile&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;alias&lt;/span&gt; &lt;span class="nx"&gt;prof&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;nano /&amp;lt;&amp;lt;ROOTDIRECTORYHERE&amp;gt;&amp;gt;/.zprofile&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; 
&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;opens&lt;/span&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;zshrc&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nx"&gt;editing&lt;/span&gt;
&lt;span class="nx"&gt;alias&lt;/span&gt; &lt;span class="nx"&gt;rc&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;nano /&amp;lt;&amp;lt;ROOTDIRECTORYHERE&amp;gt;&amp;gt;/.zshrc&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; 
&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;source&lt;/span&gt; &lt;span class="nf"&gt;profiles &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;should&lt;/span&gt; &lt;span class="nx"&gt;be&lt;/span&gt; &lt;span class="nx"&gt;done&lt;/span&gt; &lt;span class="nx"&gt;every&lt;/span&gt; &lt;span class="nx"&gt;time&lt;/span&gt; &lt;span class="nx"&gt;after&lt;/span&gt; &lt;span class="nx"&gt;changing&lt;/span&gt; &lt;span class="nx"&gt;profile&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;alias&lt;/span&gt; &lt;span class="nx"&gt;s&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;source /&amp;lt;&amp;lt;ROOTDIRECTORYHERE&amp;gt;&amp;gt;/.zprofile; source /&amp;lt;&amp;lt;ROOTDIRECTORYHERE&amp;gt;&amp;gt;/.zshrc;&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;fancy&lt;/span&gt; &lt;span class="nx"&gt;ls&lt;/span&gt;
&lt;span class="nx"&gt;alias&lt;/span&gt; &lt;span class="nx"&gt;lk&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ls -lhkart&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;lk&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="nx"&gt;typos&lt;/span&gt; &lt;span class="p"&gt;;)&lt;/span&gt;
&lt;span class="nx"&gt;alias&lt;/span&gt; &lt;span class="nx"&gt;kl&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ls -lhkart&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; 
&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;open&lt;/span&gt; &lt;span class="nx"&gt;current&lt;/span&gt; &lt;span class="nx"&gt;folder&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;GUI&lt;/span&gt;
&lt;span class="nx"&gt;alias&lt;/span&gt; &lt;span class="nx"&gt;show&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;open .&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;go&lt;/span&gt; &lt;span class="nx"&gt;back&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;folder&lt;/span&gt;
&lt;span class="nx"&gt;alias&lt;/span&gt; &lt;span class="nx"&gt;back&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;cd ..&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;previous&lt;/span&gt; &lt;span class="nx"&gt;folder&lt;/span&gt;
&lt;span class="nx"&gt;alias&lt;/span&gt; &lt;span class="nx"&gt;prev&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;cd -&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;cd&lt;/span&gt; &lt;span class="kd"&gt;with&lt;/span&gt; &lt;span class="nx"&gt;no&lt;/span&gt; &lt;span class="nx"&gt;arguments&lt;/span&gt; &lt;span class="nx"&gt;brings&lt;/span&gt; &lt;span class="nx"&gt;you&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;your&lt;/span&gt; &lt;span class="nx"&gt;root&lt;/span&gt; &lt;span class="nx"&gt;folder&lt;/span&gt; &lt;span class="p"&gt;:)&lt;/span&gt;
&lt;span class="nx"&gt;alias&lt;/span&gt; &lt;span class="nx"&gt;home&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;cd&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;code&gt;cd (without args)&lt;/code&gt; - Return to the home directory&lt;/p&gt;

&lt;p&gt;&lt;code&gt;pushd and popd.&lt;/code&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The pushd command saves the current working directory in memory so it can be returned to at any time, pushd moves to the parent directory. The popd command returns to the path at the top of the directory stack.[5][6] This directory stack is accessed by the command dirs in Unix or Get-Location -stack in Windows PowerShell.&lt;br&gt;
&lt;a href="https://en.wikipedia.org/wiki/Pushd_and_popd" rel="noopener noreferrer"&gt;Learn more&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Other articles:&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;




&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;&lt;strong&gt;Recommended reading!&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;
 




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://chipper-motivator-3112.ck.page/05710ea3d3" rel="noopener noreferrer"&gt;Subscribe to my Newsletter!&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;A loooong, and fun, weekly recap for you &lt;br&gt;
Free PDF version of my articles&lt;br&gt;
Highly customizable inbox&lt;br&gt;
That's --&amp;gt; free &amp;lt;-- and you help me!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>bash</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Are you obsessed by programming? 🧠🤯</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Wed, 10 Mar 2021 15:05:55 +0000</pubDate>
      <link>https://dev.to/worldindev/is-programming-an-obsession-23cc</link>
      <guid>https://dev.to/worldindev/is-programming-an-obsession-23cc</guid>
      <description>&lt;p&gt;&lt;code&gt;Hello World!&lt;/code&gt; &lt;a href="https://dev.to/devlorenzo/series/11376"&gt;My first three #healthydebate&lt;/a&gt; generated more than 6000 views and 130 comments! So I decided to create another one, it feels so good to have interactions with other programmers! &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First -general- question, do you think you are obsessed by programming?&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;Obsessions are recurrent, persistent, and intrusive thoughts. (I removed unwanted from the list - as I hope, you love programming!)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;If you work as a programmer, do you code out of work?&lt;/li&gt;
&lt;li&gt;Around how many hours do you code every day?&lt;/li&gt;
&lt;li&gt;How many &lt;em&gt;do you think&lt;/em&gt; about programming?&lt;/li&gt;
&lt;li&gt;Could you just stop programming for a month? (I add without having problems)&lt;/li&gt;
&lt;li&gt;Fun question - Have you already dreamed of (you) programming or code? Tell us the story!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You have nothing to lose, write that comment!&lt;/p&gt;

&lt;p&gt;--&amp;gt; &lt;em&gt;And don't hesitate to psychoanalyze yourself.&lt;/em&gt; I think it's a good habit&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Another idea to convince you to write a comment. &lt;strong&gt;The comment with more likes/reply will have free advertising on my next discussion post (+2k views per post)&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;I'm very interested in creating a conversation / a debate thinking if you think that programming is an obsession. I also have in mind to use quotes from this post in my next writings. So don't limit yourself by writing!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Forqyaiqldvfwr8mxtvm3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Forqyaiqldvfwr8mxtvm3.png" alt="image" width="542" height="260"&gt;&lt;/a&gt; &lt;/p&gt;




&lt;p&gt;Another very interesting conversation is about "why do you code?"(why do you love programming). I invite you to express yourself there too. &lt;a href="https://dev.to/devlorenzo/why-do-you-love-programming-o4h"&gt;Go check it out!&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;p&gt;Recommended reading:&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;
.

</description>
      <category>healthydebate</category>
      <category>android</category>
      <category>javascript</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Top Google Chrome Extensions For Devs 🔥🚀</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Sun, 07 Mar 2021 14:01:05 +0000</pubDate>
      <link>https://dev.to/worldindev/top-google-chrome-extensions-for-devs-2mkf</link>
      <guid>https://dev.to/worldindev/top-google-chrome-extensions-for-devs-2mkf</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/brandonwallace" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F403922%2Ffae1bd63-d3d1-41c7-a3b8-e92e9fa4df02.png" alt="brandonwallace"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/brandonwallace/top-firefox-extensions-for-developers-3l5j" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Top Firefox Extensions For Developers 🔥🚀&lt;/h2&gt;
      &lt;h3&gt;brandon_wallace ・ Mar 7 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;&lt;code&gt;Hello world!&lt;/code&gt;In this post I'm gonna show you my favorite chrome extensions! They makes me more productive. And gives me inspiration to do more coding. &lt;/p&gt;

&lt;p&gt;🔖 - Bookmark the article to save it&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;And remember the like ❤&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You absolutely need to read that:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  My Google Chrome extensions:
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff3os8q1nu27jkzsxlmi5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff3os8q1nu27jkzsxlmi5.png" alt="image" width="282" height="170"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://chrome.google.com/webstore/detail/grepper/amaaokahonnfjjemodnpmeenfpnnbkco?hl=it" rel="noopener noreferrer"&gt;Grepper&lt;/a&gt; → Allow you to save code&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjpn5fqcoxutj1r22o5kl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjpn5fqcoxutj1r22o5kl.png" alt="image" width="261" height="153"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2 - &lt;a href="https://chrome.google.com/webstore/detail/shortcuts-for-google/baohinapilmkigilbbbcccncoljkdpnd?hl=it" rel="noopener noreferrer"&gt;Shortcuts for google&lt;/a&gt; → Open google apps with a click&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg3hwbsrzow5mxpkq9xwg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg3hwbsrzow5mxpkq9xwg.png" alt="image" width="107" height="104"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;3 - &lt;a href="https://chrome.google.com/webstore/detail/video-speed-controller/nffaoalbilbmmfgbnbgppjihopabppdk" rel="noopener noreferrer"&gt;Video Speed Controller&lt;/a&gt; → Allow you to control the speed of a video with shortcuts and to overcome the 2x speed&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd342nr5kloi9ul8c001b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd342nr5kloi9ul8c001b.png" alt="image" width="282" height="178"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4 - &lt;a href="https://chrome.google.com/webstore/detail/code-line-daily/jfgojeolhopchbgfdgodicnaimmkbpbg?hl=it" rel="noopener noreferrer"&gt;Code Line Daily&lt;/a&gt; → every day a line of code in your browser (HTML, CSS, and Javascript)&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fef6zp0yzkezsvkls2wg3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fef6zp0yzkezsvkls2wg3.png" alt="image" width="440" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;5 - &lt;a href="https://chrome.google.com/webstore/detail/volume-manager/abnhonfioiokelhdappjknfaannlncac?hl=it" rel="noopener noreferrer"&gt;Volume Manager&lt;/a&gt; → Manage the volume of a tab&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuibyp9q3elq4qz9zysyg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuibyp9q3elq4qz9zysyg.png" alt="image" width="440" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;6 - &lt;a href="https://chrome.google.com/webstore/detail/visbug/cdockenadnadldjbbgcallicgledbeoc?hl=it" rel="noopener noreferrer"&gt;VisBug&lt;/a&gt; → Open source web design debug tools built with JavaScript: "a FireBug for designers".&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz277w3039by36qbkei4d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz277w3039by36qbkei4d.png" alt="image" width="440" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;7 - &lt;a href="https://chrome.google.com/webstore/detail/better-onetab/eookhngofldnbnidjlbkeecljkfpmfpg?hl=it" rel="noopener noreferrer"&gt;Better-OneTab&lt;/a&gt; → Allow you to manage and save your tabs&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo1fbdubumznkr0dmn3b5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo1fbdubumznkr0dmn3b5.png" alt="image" width="440" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;8 - &lt;a href="https://chrome.google.com/webstore/detail/grammarly-for-chrome/kbfnbcaeplbcioakkpcpgfkobkghlhen?hl=it" rel="noopener noreferrer"&gt;Grammarly for chrome&lt;/a&gt; → Correct my English 😀&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgab6gdvslooqdjhc2kh0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgab6gdvslooqdjhc2kh0.png" alt="image" width="440" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;9 - &lt;a href="https://chrome.google.com/webstore/detail/colorzilla/bhlhnicpbhignbdhedgjhgdocnmhomnp?hl=it" rel="noopener noreferrer"&gt;Color Zilla&lt;/a&gt; → Pick up a color from any web page and copy the hex&lt;/p&gt;

&lt;p&gt;Or:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffxon66c8zc1qjv6vb6yg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffxon66c8zc1qjv6vb6yg.png" alt="image" width="440" height="280"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;9 - &lt;a href="https://chrome.google.com/webstore/detail/quick-color-picker/medhnjegdfgmhpammlpfokdacikkdpjj?hl=it" rel="noopener noreferrer"&gt;Quick color picker&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbt9s19qblygdyj3new78.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbt9s19qblygdyj3new78.png" alt="image" width="440" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;10 - &lt;a href="https://chrome.google.com/webstore/detail/what-font-find-font/djgfpbegnihdgbngpmhjnlchgglngcdn?hl=it" rel="noopener noreferrer"&gt;What Font&lt;/a&gt; → Check the font of any web page.&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4ekcq0zb6ou0uq8310b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4ekcq0zb6ou0uq8310b.png" alt="image" width="128" height="128"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;11 - &lt;a href="https://chrome.google.com/webstore/detail/dimensions/baocaagndhipibgklemoalmkljaimfdj" rel="noopener noreferrer"&gt;Dimension&lt;/a&gt; → Check the dimensions (in pixels) of elements / their distance&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2pv3g03yyw0hzr5k3m3n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2pv3g03yyw0hzr5k3m3n.png" alt="image" width="440" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;12 - &lt;a href="https://chrome.google.com/webstore/detail/lorem-ipsum-generator-def/mcdcbjjoakogbcopinefncmkcamnfkdb?hl=it" rel="noopener noreferrer"&gt;Lorem Ipsum Generator&lt;/a&gt; → Generate lorem ipsum test quickly&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpbsjgmzrjn385icvoa80.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpbsjgmzrjn385icvoa80.png" alt="image" width="440" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;13 - &lt;a href="https://chrome.google.com/webstore/detail/cssviewer/ggfgijbpiheegefliciemofobhmofgce?hl=it" rel="noopener noreferrer"&gt;CSS viewer&lt;/a&gt; → CSS property viewer&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl60ciw6x1tkwmr66yfue.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl60ciw6x1tkwmr66yfue.png" alt="image" width="440" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;14 - &lt;a href="https://chrome.google.com/webstore/search/window%20resizer?hl=it&amp;amp;_category=extensions" rel="noopener noreferrer"&gt;Window Resizer&lt;/a&gt; → Allow you to resize the web page (for responsive webpages)&lt;br&gt;
Web Developer → Adds a toolbar button with various web developer tools.&lt;/p&gt;



&lt;p&gt;15 - You can also install an Ad Blocker like &lt;a href="https://chrome.google.com/webstore/detail/adblock-%E2%80%94-best-ad-blocker/gighmmpiobklfepjocnamgkkbiglidom?hl=it" rel="noopener noreferrer"&gt;AdBlock&lt;/a&gt; or &lt;a href="https://chrome.google.com/webstore/detail/adguard-adblocker/bgnkhhnnamicmpeenaelnjfhikgbkllg?hl=it" rel="noopener noreferrer"&gt;AdGuard&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;Your extensions:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/json-formatter/bcjindcccaagfpapjjmafapmmgkkhgoa" rel="noopener noreferrer"&gt;JSON formatter&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/fonts-ninja/eljapbgkmlngdpckoiiibecpemleclhh" rel="noopener noreferrer"&gt;Fonts ninja&lt;/a&gt; - Alternative to what font&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcf2vp2s5isijhgbk7m5u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcf2vp2s5isijhgbk7m5u.png" alt="image" width="128" height="128"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb" rel="noopener noreferrer"&gt;Vinium&lt;/a&gt;&lt;br&gt;
--&amp;gt; The Hacker's Browser. Vimium provides keyboard shortcuts for navigation and control in the spirit of Vim.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I add this extension I just discovered:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz7o2q30wk6k218paa4dj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz7o2q30wk6k218paa4dj.png" alt="image" width="128" height="128"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/calculator/lanchoggmnkmkehofmdonkbcdolfonmf/related?hl=en" rel="noopener noreferrer"&gt;Calculator&lt;/a&gt; - very useful when you have to use the calculator while staying in the same tab (open as a popup)&lt;/p&gt;



&lt;p&gt;Hope this helps!&lt;/p&gt;

&lt;p&gt;Comments your favorite chrome extensions!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;And remember the like! ❤&lt;/p&gt;
&lt;/blockquote&gt;



&lt;p&gt;Recommended reading:&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://worldindev.ck.page" rel="noopener noreferrer"&gt;Subscribe to my Newsletter!&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;A loooong, and fun, weekly recap for you &lt;br&gt;
Free PDF version of my articles&lt;br&gt;
Highly customizable inbox&lt;br&gt;
That's --&amp;gt; free &amp;lt;-- and you help me!&lt;/p&gt;



&lt;p&gt;Join us on &lt;a href="https://discord.gg/aWS2YKk6" rel="noopener noreferrer"&gt;Discord&lt;/a&gt; to participate in hackathons with us / participate in our giveaways (we are offering a free Udemy course at 200 members)!&lt;/p&gt;



&lt;p&gt;Linked article --&amp;gt; Check out this awesome list of &lt;a href="https://link%20to%20my%20article" rel="noopener noreferrer"&gt;Firefox extension&lt;/a&gt; created by [Brandon Wallace] 🚀&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/brandonwallace" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F403922%2Ffae1bd63-d3d1-41c7-a3b8-e92e9fa4df02.png" alt="brandonwallace"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/brandonwallace/top-firefox-extensions-for-developers-3l5j" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Top Firefox Extensions For Developers 🔥🚀&lt;/h2&gt;
      &lt;h3&gt;brandon_wallace ・ Mar 7 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;Image by &lt;a href="https://pixabay.com/users/geralt-9301/?utm_source=link-attribution&amp;amp;utm_medium=referral&amp;amp;utm_campaign=image&amp;amp;utm_content=773217" rel="noopener noreferrer"&gt;Gerd Altmann&lt;/a&gt; from &lt;a href="https://pixabay.com/?utm_source=link-attribution&amp;amp;utm_medium=referral&amp;amp;utm_campaign=image&amp;amp;utm_content=773217" rel="noopener noreferrer"&gt;Pixabay&lt;/a&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>productivity</category>
      <category>career</category>
      <category>webdev</category>
    </item>
    <item>
      <title>The ultimate Cheat sheets compilation (200+) - 🔥Roadmap to dev 🚀 - 2</title>
      <dc:creator>Lorenzo</dc:creator>
      <pubDate>Tue, 02 Mar 2021 10:24:42 +0000</pubDate>
      <link>https://dev.to/worldindev/the-ultimate-compilation-of-cheat-sheets-2-53he</link>
      <guid>https://dev.to/worldindev/the-ultimate-compilation-of-cheat-sheets-2-53he</guid>
      <description>&lt;p&gt;&lt;code&gt;Hello World&lt;/code&gt; Today I wanted to share with you my Cheatsheet Compilation that every dev should know about.&lt;a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;PS: It took me around 8 hours to complete the whole article (the two parts) - So please &lt;strong&gt;remember the like ❤️ and maybe super like🦄&lt;/strong&gt; &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;🔖 - Bookmark the article to save it &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;This is part 2 - &lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;open part 1&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Read also:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/worldindev" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F3864%2Fc6f2cf0f-a06c-4603-8a9a-56a612b9697b.png" alt="World In Dev" width="512" height="512"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571015%2F0614dc8e-eba2-42c8-9473-39fbcb740a67.png" alt="" width="200" height="200"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/worldindev/400-javascript-interview-questions-with-answers-2fcj" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;400+ JavaScript Interview Questions 🎓 With Answers 🌠&lt;/h2&gt;
      &lt;h3&gt;Lorenzo for World In Dev ・ Apr 27 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#career&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;h2&gt;
  
  
  ⚡Giveaway ⚡
&lt;/h2&gt;

&lt;p&gt;We are giving away any course you need on Udemy. Any price any course.&lt;br&gt;
Steps to enter the giveaway&lt;br&gt;
--&amp;gt; React to this post&lt;br&gt;
--&amp;gt; &lt;a href="https://worldindev.ck.page/" rel="noopener noreferrer"&gt;Subscribe to our Newsletter&lt;/a&gt; &lt;strong&gt;&amp;lt;--&lt;/strong&gt; Very important&lt;/p&gt;



&lt;p&gt;Table of content:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;-- Part 1 --&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;
  💻 - &lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Front End&lt;/a&gt;
  &lt;ol&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;HTML&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;CSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Bootstrap&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Javascript&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;




&lt;/p&gt;
&lt;p&gt;
  📕 - &lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Back End&lt;/a&gt;
  &lt;ol&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Python&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;+ Django&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Node&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Express&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Typescript&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Angular &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Vue&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Go&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Ruby&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Ruby on rails&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Rust&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;C#&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;PHP&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;




&lt;/p&gt;
&lt;p&gt;
  📓 - &lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Databases&lt;/a&gt;
  &lt;ol&gt;
&lt;li&gt;
&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;SQL&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;MySQL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;PostgreSQL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;SQLite&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;NoSQL&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;MongoDB&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Cassandra&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;Redis&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;






&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/DevLorenz0/CheatSheets-compilation/blob/main/README.md" rel="noopener noreferrer"&gt;&lt;strong&gt;Hey, remember to check and 🌟 the GitHub repo of this project&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-- Part 2 -- (This part)&lt;/p&gt;

&lt;p&gt;
  📱 - Mobile apps
  &lt;ol&gt;
&lt;li&gt;Java&lt;/li&gt;
&lt;li&gt;Kotlin&lt;/li&gt;
&lt;li&gt;Android studio&lt;/li&gt;
&lt;li&gt;Swift&lt;/li&gt;
&lt;li&gt;
React
&lt;/li&gt;
&lt;/ol&gt;




&lt;/p&gt;
&lt;p&gt;
  🖲 - Version control
  &lt;ol&gt;
&lt;li&gt;Git&lt;/li&gt;
&lt;li&gt;
GitHub
&lt;/li&gt;
&lt;/ol&gt;




&lt;/p&gt;
&lt;p&gt;
  📗 - MDN / W3school
  &lt;ol&gt;
&lt;li&gt;Learn web development&lt;/li&gt;
&lt;li&gt;HTML&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;li&gt;JavaScript&lt;/li&gt;
&lt;li&gt;HTTP&lt;/li&gt;
&lt;li&gt;APIs&lt;/li&gt;
&lt;li&gt;
Others
&lt;/li&gt;
&lt;/ol&gt;




&lt;/p&gt;
&lt;p&gt;
  🚀 Extra
  &lt;ol&gt;
&lt;li&gt;LUA (game development)&lt;/li&gt;
&lt;li&gt;R (data science)&lt;/li&gt;
&lt;li&gt;Scala (data science)&lt;/li&gt;
&lt;li&gt;Dart&lt;/li&gt;
&lt;li&gt;Chrome Extentions&lt;/li&gt;
&lt;li&gt;VS code Setup&lt;/li&gt;
&lt;li&gt;
Your sources

&lt;ul&gt;
&lt;li&gt;C and C++&lt;/li&gt;
&lt;li&gt;
Your cheat sheets

&lt;ul&gt;
&lt;li&gt;
Linux
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;








&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Remember the like ❤️&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Go to Bottom - ⬇️&lt;/p&gt;


&lt;h2&gt;
  
  
  📱 - Mobile apps&lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;
  Table of content
  &lt;ol&gt;
&lt;li&gt;Java&lt;/li&gt;
&lt;li&gt;Kotlin&lt;/li&gt;
&lt;li&gt;Android studio&lt;/li&gt;
&lt;li&gt;Swift&lt;/li&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;
Go to Top - 🔝
&lt;/li&gt;
&lt;/ol&gt;




&lt;/p&gt;

&lt;h3&gt;
  
  
  Java&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftqx2eecxwj6b3v6e5f3i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftqx2eecxwj6b3v6e5f3i.png" alt="image" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hackr.io/blog/java-cheat-sheet" rel="noopener noreferrer"&gt;By hackr.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fasq58cau1cgvdyw1ci9n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fasq58cau1cgvdyw1ci9n.png" alt="image" width="469" height="55"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://introcs.cs.princeton.edu/java/11cheatsheet/" rel="noopener noreferrer"&gt;By princeton&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkyqm1t06wy5hsoyxtdri.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkyqm1t06wy5hsoyxtdri.png" alt="image" width="608" height="260"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://programmingwithmosh.com/wp-content/uploads/2019/07/Java-Cheat-Sheet.pdf" rel="noopener noreferrer"&gt;By programming with mosh - PDF version&lt;/a&gt; - 18 pages&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.edureka.co/blog/cheatsheets/java-cheat-sheet/" rel="noopener noreferrer"&gt;By edureka&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h3&gt;
  
  
  Kotlin&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8nidemckfemzida5ju5g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8nidemckfemzida5ju5g.png" alt="image" width="800" height="369"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://blog.kotlin-academy.com/kotlin-cheat-sheet-1137588c75a" rel="noopener noreferrer"&gt;By Kotlin academy - at medium&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.raywenderlich.com/6362971-kotlin-cheat-sheet-and-quick-reference" rel="noopener noreferrer"&gt;By raywenderlich.com&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://koenig-media.raywenderlich.com/uploads/2019/11/RW-Kotlin-Cheatsheet-1.1.pdf" rel="noopener noreferrer"&gt;PDF Version&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzvnestu8150hy3uo3hae.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzvnestu8150hy3uo3hae.png" alt="image" width="496" height="101"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://devhints.io/kotlin" rel="noopener noreferrer"&gt;By dev hints&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://koenig-media.raywenderlich.com/uploads/2018/08/RW_Kotlin_Cheatsheet_1_0.pdf" rel="noopener noreferrer"&gt;By koenig-media&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://play.kotlinlang.org/#eyJ2ZXJzaW9uIjoiMS40LjMwIiwicGxhdGZvcm0iOiJqYXZhIiwiYXJncyI6IiIsImpzQ29kZSI6IiIsIm5vbmVNYXJrZXJzIjp0cnVlLCJ0aGVtZSI6ImlkZWEiLCJjb2RlIjoiLyoqXG4gKiBZb3UgY2FuIGVkaXQsIHJ1biwgYW5kIHNoYXJlIHRoaXMgY29kZS4gXG4gKiBwbGF5LmtvdGxpbmxhbmcub3JnIFxuICovXG5cbmZ1biBtYWluKCkge1xuICAgIHByaW50bG4oXCJIZWxsbywgd29ybGQhISFcIilcbn0ifQ==" rel="noopener noreferrer"&gt;Kotlin playground&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h3&gt;
  
  
  Android Studio&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;h4&gt;
  
  
  Schortcuts:
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgzmy4ver6i1qtxmytsmi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgzmy4ver6i1qtxmytsmi.png" alt="image" width="750" height="1061"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://cheatography.com/kekc42/cheat-sheets/android-studio-windows-linux/" rel="noopener noreferrer"&gt;At cheatography&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;&lt;a href="https://developer.android.com/training/testing/espresso/cheat-sheet" rel="noopener noreferrer"&gt;Android studio Docs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://alvinalexander.com/android/android-cheat-sheet-main-concepts/" rel="noopener noreferrer"&gt;By Calvin alexander - notes&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.dummies.com/web-design-development/mobile-apps/android-apps/android-application-development-for-dummies-cheat-sheet/" rel="noopener noreferrer"&gt;By dummies.com - series of articles&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h3&gt;
  
  
  Swift&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg9pacvt79rj9dvik70kc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg9pacvt79rj9dvik70kc.png" alt="image" width="251" height="94"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://swift.org/documentation/" rel="noopener noreferrer"&gt;Swift docs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fytb0g25i8d5vvbfc8ija.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fytb0g25i8d5vvbfc8ija.png" alt="image" width="800" height="800"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.raywenderlich.com/6362977-swift-5-1-cheat-sheet-and-quick-reference" rel="noopener noreferrer"&gt;By raywenderlich&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://koenig-media.raywenderlich.com/uploads/2019/11/RW-Swift-5.1-Cheatsheet-1.0.1.pdf" rel="noopener noreferrer"&gt;PDF Version&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://codewithchris.com/swift-cheat-sheet/" rel="noopener noreferrer"&gt;By code with chris&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/reinder42/SwiftCheatsheet" rel="noopener noreferrer"&gt;By learn app making - at GitHub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h3&gt;
  
  
  React / React Native&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fekeqhraf5y8l5e6ixec3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fekeqhraf5y8l5e6ixec3.png" alt="image" width="772" height="162"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://devhints.io/react" rel="noopener noreferrer"&gt;By dev hints&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fywu9tvlpf1461staj5hw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fywu9tvlpf1461staj5hw.png" alt="image" width="400" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/typescript-cheatsheets/react" rel="noopener noreferrer"&gt;At GitHub: React + Typescript cheat sheet&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://reactcheatsheet.com/" rel="noopener noreferrer"&gt;By react cheat sheet.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h2&gt;
  
  
  🖲 - Version Control&lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;
  Table of content
  &lt;ol&gt;
&lt;li&gt;Git&lt;/li&gt;
&lt;li&gt;GitHub&lt;/li&gt;
&lt;li&gt;
Go to Top - 🔝
&lt;/li&gt;
&lt;/ol&gt;




&lt;/p&gt;

&lt;h3&gt;
  
  
  Git&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj7fa8e5rexgjb7e7ore3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj7fa8e5rexgjb7e7ore3.png" alt="image" width="687" height="443"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.atlassian.com/git/tutorials/atlassian-git-cheatsheet" rel="noopener noreferrer"&gt;By &lt;/a&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://www.atlassian.com/dam/jcr:e7e22f25-bba2-4ef1-a197-53f46b6df4a5/SWTM-2088_Atlassian-Git-Cheatsheet.pdf" rel="noopener noreferrer"&gt;PDF download&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm23qk68po9efoy025e30.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm23qk68po9efoy025e30.png" alt="image" width="800" height="80"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://about.gitlab.com/images/press/git-cheat-sheet.pdf" rel="noopener noreferrer"&gt;By gitlab - PDF \Version&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwinru93bjj4mdxqziqh4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwinru93bjj4mdxqziqh4.png" alt="image" width="800" height="191"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.git-tower.com/blog/git-cheat-sheet/" rel="noopener noreferrer"&gt;By git-tower.com&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://towardsdatascience.com/the-git-cheat-sheet-5858865457ef" rel="noopener noreferrer"&gt;Post at medium&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h3&gt;
  
  
  GitHub&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnariagwy1jxuit0axrhy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnariagwy1jxuit0axrhy.png" alt="image" width="405" height="189"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://education.github.com/git-cheat-sheet-education.pdf" rel="noopener noreferrer"&gt;By education.github.com&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://lab.github.com/githubtraining/introduction-to-github" rel="noopener noreferrer"&gt;GitHub lab - Course: Introduction to GitHub&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbhxzkoveq80sqcnyyryj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbhxzkoveq80sqcnyyryj.png" alt="image" width="364" height="238"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://guides.github.com/pdfs/markdown-cheatsheet-online.pdf" rel="noopener noreferrer"&gt;Markdown cheat sheet&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h2&gt;
  
  
  📗 - Mozilla Developer Network / W3school&lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;
  Table of content
  &lt;ol&gt;
&lt;li&gt;Learn web development&lt;/li&gt;
&lt;li&gt;HTML&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;li&gt;JavaScript&lt;/li&gt;
&lt;li&gt;HTTP&lt;/li&gt;
&lt;li&gt;APIs&lt;/li&gt;
&lt;li&gt;
Go to Top - 🔝
&lt;/li&gt;
&lt;/ol&gt;




&lt;/p&gt;


&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0fwkeu56fedh8udm7vu3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0fwkeu56fedh8udm7vu3.png" alt="image" width="144" height="144"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0774ra7ykupw5g24uzn6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0774ra7ykupw5g24uzn6.png" alt="image" width="550" height="110"&gt;&lt;/a&gt;  &lt;/p&gt;
&lt;h4&gt;
  
  
  Web development&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Learn" rel="noopener noreferrer"&gt;Link&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h4&gt;
  
  
  HTML&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTML" rel="noopener noreferrer"&gt;Link&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.w3schools.in/category/html-tutorial/" rel="noopener noreferrer"&gt;W3school&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h4&gt;
  
  
  CSS&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS" rel="noopener noreferrer"&gt;Link&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.w3schools.in/css-tutorial/" rel="noopener noreferrer"&gt;W3school&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.w3schools.in/category/bootstrap4/" rel="noopener noreferrer"&gt;W3school - Bootstrap&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h4&gt;
  
  
  Javascript&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript" rel="noopener noreferrer"&gt;Link&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h4&gt;
  
  
  HTTP&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTTP" rel="noopener noreferrer"&gt;Link&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h4&gt;
  
  
  APIs&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/API" rel="noopener noreferrer"&gt;Link&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
  
  
  Others&lt;a&gt;&lt;/a&gt;
&lt;/h4&gt;

&lt;p&gt;W3school:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/wordpress-tutorial/" rel="noopener noreferrer"&gt;Wordpress&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/java-tutorial/" rel="noopener noreferrer"&gt;Java&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/c-tutorial/" rel="noopener noreferrer"&gt;C&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/cplusplus-tutorial/" rel="noopener noreferrer"&gt;C++&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/python-tutorial/" rel="noopener noreferrer"&gt;Python&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/category/php/" rel="noopener noreferrer"&gt;PHP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/category/laravel-tutorial/" rel="noopener noreferrer"&gt;Laravel&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/category/r/" rel="noopener noreferrer"&gt;R&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/category/cloud-computing/" rel="noopener noreferrer"&gt;Cloud computing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.in/category/software-testing/" rel="noopener noreferrer"&gt;Software testing&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h2&gt;
  
  
  🚀 - Extra&lt;a&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;
  Table of content
  &lt;ol&gt;
&lt;li&gt;LUA for game development&lt;/li&gt;
&lt;li&gt;R (for data science)&lt;/li&gt;
&lt;li&gt;Scala (for data science)&lt;/li&gt;
&lt;li&gt;Dart&lt;/li&gt;
&lt;li&gt;C and C++&lt;/li&gt;
&lt;li&gt;Your sources&lt;/li&gt;
&lt;li&gt;
Go to Top - 🔝
&lt;/li&gt;
&lt;/ol&gt;




&lt;/p&gt;

&lt;h3&gt;
  
  
  LUA&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkda75i36y125vico3ixp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkda75i36y125vico3ixp.png" alt="image" width="255" height="175"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://devhints.io/lua" rel="noopener noreferrer"&gt;By dev hints&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gist.github.com/doches/2219649" rel="noopener noreferrer"&gt;At GitHub&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h3&gt;
  
  
  R&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxcv817kucxn9011ywxmh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxcv817kucxn9011ywxmh.png" alt="image" width="748" height="235"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://rstudio.com/wp-content/uploads/2019/01/Cheatsheets_2019.pdf" rel="noopener noreferrer"&gt;By Rstudio&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.dummies.com/programming/r/r-for-dummies-cheat-sheet/" rel="noopener noreferrer"&gt;R for dummies - By dummies.com - Article&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h3&gt;
  
  
  Scala&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F47zr7u92f1qrs4ff07m7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F47zr7u92f1qrs4ff07m7.png" alt="image" width="174" height="96"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.scala-lang.org/cheatsheets/index.html" rel="noopener noreferrer"&gt;Scala docs&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gist.github.com/heathermiller/2ab9ef36910fdfdd20e9" rel="noopener noreferrer"&gt;At GitHub&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h3&gt;
  
  
  Dart (for Flutter)&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuf3lkg49wjlwcmi7qx17.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuf3lkg49wjlwcmi7qx17.png" alt="image" width="139" height="56"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://dart.dev/codelabs/dart-cheatsheet" rel="noopener noreferrer"&gt;Docs - dart.dev&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqb3fndw0a6f12c490fj5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqb3fndw0a6f12c490fj5.png" alt="image" width="800" height="61"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.raywenderlich.com/4482580-dart-2-cheat-sheet-and-quick-reference-2019" rel="noopener noreferrer"&gt;By raywenderlich&lt;/a&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://koenig-media.raywenderlich.com/uploads/2019/08/RW-Dart-Cheatsheet-1.0.2.pdf" rel="noopener noreferrer"&gt;PDF Version&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;


&lt;h3&gt;
  
  
  Chrome Extentions&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;My Google Chrome extensions:&lt;br&gt;
Grepper → Allow you to save code &lt;br&gt;
Shortcuts for google → Open google apps with a click&lt;br&gt;
Video Speed Controller → Allow you to control the speed of a video with shortcuts and to overcome the 2x speed&lt;br&gt;&lt;br&gt;
Code Line Daily → every day a line of code in your browser (HTML, CSS, and Javascript)&lt;br&gt;
Volume Manager → Manage the volume of a tab&lt;br&gt;
VisBug → Open source web design debug tools built with JavaScript: "a FireBug for designers".&lt;br&gt;
Better-OneTab → Allow you to manage and save your tabs&lt;br&gt;
Grammarly for chrome → Correct my English 😀 &lt;br&gt;
Color Zilla → Pick up a color from any web page and copy the hex&lt;br&gt;
What Font → Check the font of any web page.&lt;br&gt;
Dimension → Check the dimensions (in pixels) of elements / their distance&lt;br&gt;
Lorem Ipsum Generator → Generate lorem ipsum test quickly&lt;br&gt;
CSS viewer → CSS property viewer&lt;br&gt;
Window Resizer → Allow you to resize the web page (for &lt;a href="https://dev.to/devlorenzo/css-how-to-make-a-website-responsive-19kg"&gt;responsive webpages&lt;/a&gt;)&lt;br&gt;
Web Developer → Adds a toolbar button with various web developer tools.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can also install an Ad Blocker&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://dev.to/devlorenzo/top-google-chrome-extensions-for-devs-2mkf"&gt;Open this article to access the othees extensions&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;
  
  
  VS code Setup&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Theme → One Dark Pro  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fku67cn50151ff9apfrcu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fku67cn50151ff9apfrcu.png" alt="image" width="721" height="508"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Font → Fira code&lt;/p&gt;

&lt;p&gt;Icon → Material Icon Theme&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4ccoq6ow2mwp8o50rrgc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4ccoq6ow2mwp8o50rrgc.png" alt="image" width="788" height="89"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F384j59j09josws7tlcjs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F384j59j09josws7tlcjs.png" alt="image" width="347" height="363"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Other Themes:&lt;br&gt;
Dark: The Best Theme / Tokyo Night&lt;br&gt;
Light: Atom One Light / Winter is coming (light)&lt;br&gt;
Here a list of 50 themes&lt;/p&gt;

&lt;p&gt;Other Fonts:&lt;br&gt;
Hack &lt;br&gt;
Input &lt;br&gt;
Source Code Pro &lt;/p&gt;


&lt;h3&gt;
  
  
  Your Sources&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;This article was just published, but feel free to add your own sources / request the insertion of a new part.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;bob-dev requested a C and C++ section&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  C and C++&lt;a&gt;&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;
  C
  &lt;h4&gt;
  
  
  C
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fovfpdc923qe93qntkth6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fovfpdc923qe93qntkth6.png" alt="image" width="800" height="59"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://developerinsider.co/c-programming-language-cheat-sheet/" rel="noopener noreferrer"&gt;By developer insider&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvja8xjbnvu3cghx62qzu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvja8xjbnvu3cghx62qzu.png" alt="image" width="423" height="37"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://courses.cs.washington.edu/courses/cse351/16wi/sections/1/Cheatsheet-c.pdf" rel="noopener noreferrer"&gt;By course.cs.washington.ed - PDF Version&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffbjmvtdzcyrds4jjxg9c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffbjmvtdzcyrds4jjxg9c.png" alt="image" width="800" height="133"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.dummies.com/programming/c/c-programming-for-dummies-cheat-sheet/" rel="noopener noreferrer"&gt;By dummies.com&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;br&gt;
&lt;/p&gt;

&lt;br&gt;
 &lt;/p&gt;




&lt;p&gt;
  C++
  &lt;h4&gt;
  
  
  C++
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fotod0axdqss5p3tncy9i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fotod0axdqss5p3tncy9i.png" alt="image" width="534" height="88"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.w3cschool.cn/attachments/apifiles/C_Cheat.pdf" rel="noopener noreferrer"&gt;By W3school - PDF Version&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1hkdfmyp05q4nv21yrod.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1hkdfmyp05q4nv21yrod.png" alt="image" width="800" height="94"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/mortennobel/cpp-cheatsheet" rel="noopener noreferrer"&gt;At GitHub&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.dummies.com/programming/cpp/c-all-in-one-for-dummies-cheat-sheet/" rel="noopener noreferrer"&gt;By dummies.com&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://cppcheatsheet.com/" rel="noopener noreferrer"&gt;By cppcheatsheet.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Go to Top - 🔝&lt;/p&gt;



 &lt;/p&gt;

&lt;p&gt;---&lt;a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc35jw6awts53o9grxusn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc35jw6awts53o9grxusn.png" alt="image" width="800" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here at dev.to - &lt;a href="https://dev.to/forcommunity/ultimate-linux-cheat-sheet-4gm5"&gt;Ultimate Linux Cheat Sheet&lt;/a&gt; - By Justin Varghese&lt;/p&gt;



&lt;p&gt;Ps: &lt;a href="https://www.toptal.com/developers/webdevchecklist" rel="noopener noreferrer"&gt;I add the web dev checklist!&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu3ekwa9e3k0xnzcd2tin.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu3ekwa9e3k0xnzcd2tin.png" alt="image" width="800" height="599"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/seanmacentee/Social-Media-Dimensions-Cheatsheet" rel="noopener noreferrer"&gt;And the social media dimension cheat sheet at GitHub&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;JavaScript Important Methods &amp;amp; Properties Cheatsheet by &lt;a class="mentioned-user" href="https://dev.to/capscode"&gt;@capscode&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/capscode/javascript-important-methods-properties-cheatsheet-52kh"&gt;Article at dev.to&lt;/a&gt;&lt;br&gt;
&lt;a href="https://pdfhost.io/v/WCjsiXHXl_important_js_methodspdf.pdf" rel="noopener noreferrer"&gt;PDF Version&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;And as Daniel Cefram said, here the link to &lt;a href="https://devhints.io/" rel="noopener noreferrer"&gt;devhints.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a&gt;&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;Available at &lt;a href="https://dev.to/devlorenzo/the-ultimate-compilation-of-cheat-sheets-100-268g"&gt;part 1&lt;/a&gt;: Front End / Back End / Databases&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Hope this helped!&lt;/p&gt;




&lt;p&gt;&lt;a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Other articles:&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1366698975349387266-571" src="https://platform.twitter.com/embed/Tweet.html?id=1366698975349387266"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1366698975349387266-571');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1366698975349387266&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Remember the like ❤️❤️❤️&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>webdev</category>
      <category>javascript</category>
      <category>java</category>
    </item>
  </channel>
</rss>
