<?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>Forem: てんとう虫 🐞</title>
    <description>The latest articles on Forem by てんとう虫 🐞 (@tentoumushi).</description>
    <link>https://forem.com/tentoumushi</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%2F800168%2Fa86f879d-86d7-49d2-b9c0-93313d2864e0.jpg</url>
      <title>Forem: てんとう虫 🐞</title>
      <link>https://forem.com/tentoumushi</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/tentoumushi"/>
    <language>en</language>
    <item>
      <title>How I Grew My Open-Source Japanese Learning Platform to 10k Monthly Users and 640+ GitHub Stars (as a Solo Dev and Student)</title>
      <dc:creator>てんとう虫 🐞</dc:creator>
      <pubDate>Tue, 11 Nov 2025 17:13:54 +0000</pubDate>
      <link>https://forem.com/tentoumushi/how-i-grew-my-open-source-japanese-learning-platform-to-10k-monthly-users-and-640-github-stars-as-56f</link>
      <guid>https://forem.com/tentoumushi/how-i-grew-my-open-source-japanese-learning-platform-to-10k-monthly-users-and-640-github-stars-as-56f</guid>
      <description>&lt;p&gt;When I first started building &lt;strong&gt;&lt;a href="https://kanadojo.com/" rel="noopener noreferrer"&gt;KanaDojo&lt;/a&gt;&lt;/strong&gt;, I wasn’t planning to build a serious learning platform or anything like that. I just wanted a simple, beautiful, &lt;em&gt;free&lt;/em&gt; way to practice and learn the Japanese kana (which is essentially the Japanese alphabet, though it's more accurately described as a syllabary) - something that felt as clean and addictive as &lt;a href="https://monkeytype.com/" rel="noopener noreferrer"&gt;Monkeytype&lt;/a&gt;, but for language learners.&lt;/p&gt;

&lt;p&gt;At the time, I was a student and a solo dev (and I still am). I didn’t have a marketing budget, a team or even a clear roadmap. But I &lt;em&gt;did&lt;/em&gt; have one goal:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Build the kind of learning tool I wish existed when I started learning Japanese.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Fast forward a year later, and &lt;strong&gt;KanaDojo has miraculously grown to nearly 10,000 monthly active users&lt;/strong&gt;, &lt;strong&gt;640+ GitHub stars&lt;/strong&gt;, and &lt;strong&gt;30+ contributors&lt;/strong&gt; from around the world. Here’s how it happened and what I learned after almost a year.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. Build Something You Yourself Would Use First
&lt;/h2&gt;

&lt;p&gt;Initially, I built KanaDojo only for myself. I was frustrated with how complicated or paywalled most Japanese learning apps felt. I wanted something fast, minimalist and distraction-free.&lt;/p&gt;

&lt;p&gt;That mindset made the first version simple but focused. I didn’t chase every feature, but just focused on one thing done extremely well:&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Helping myself internalize the Japanese kana through repetition, feedback and flow, with the added aesthetics and customizability inspired by Monkeytype.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That focus attracted other learners who wanted exactly the same thing.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Open Source Early, Even When It Feels “Not Ready”
&lt;/h2&gt;

&lt;p&gt;The first commits were honestly messy. Actually, I even exposed my project's Google Analytics API keys at one point lol. Still, putting KanaDojo on GitHub very early on changed everything.&lt;/p&gt;

&lt;p&gt;Even when the project had 0 stars on GitHub and no real contributors, open-sourcing KanaDojo still gave my productivity a much-needed boost, because I now felt "seen" and thus had to polish and update my project regularly in the case that someone &lt;em&gt;would&lt;/em&gt; eventually see it (and decide to roast me and my code).&lt;/p&gt;

&lt;p&gt;That being said, the real breakthrough came after I started posting about KanaDojo on Reddit, Discord and other online forums. People started opening issues, suggesting improvements and even sending pull requests. Suddenly, it wasn’t &lt;em&gt;my&lt;/em&gt; project anymore - it became &lt;em&gt;our&lt;/em&gt; project.&lt;/p&gt;

&lt;p&gt;The community helped me shape the roadmap, catch bugs and add features I wouldn’t have thought of alone, and took KanaDojo in an amazing direction I never would've thought of myself.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If you wait until your project feels “perfect,” you’ll miss out on the best feedback and collaboration you could ever get.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  3. Focus on Design and Experience, Not Just Code
&lt;/h2&gt;

&lt;p&gt;A lot of open-source tools look like developer experiments - especially the project KanaDojo was initially based off of, kana.pro (yes, you can google "kana pro" - it's a real website, and it's &lt;em&gt;very&lt;/em&gt; ugly!). I wanted KanaDojo to feel like a polished product - something a beginner could open and instantly understand, and also appreciate the beauty of the app's minimalist, aesthetic design.&lt;/p&gt;

&lt;p&gt;That meant obsessing over:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Smooth animations and feedback loops&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Clean typography and layout&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Accessibility and mobile-first design&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I treated UX like part of the &lt;em&gt;core functionality&lt;/em&gt;, not an afterthought - and users noticed.&lt;/p&gt;




&lt;h2&gt;
  
  
  4. Build in Public (and Be Genuine About It)
&lt;/h2&gt;

&lt;p&gt;I regularly shared progress on Reddit, Discord, and a few Japanese-learning communities - not as ads, but as &lt;em&gt;updates&lt;/em&gt; from a passionate learner.&lt;/p&gt;

&lt;p&gt;Even though I got downvoted and hated on dozens of times, people still responded to my authenticity. I wasn’t selling anything. I was just sharing something I built out of love for the language and for coding.&lt;/p&gt;

&lt;p&gt;Eventually, that transparency built trust and word-of-mouth growth I could never have bought.&lt;/p&gt;




&lt;h2&gt;
  
  
  5. Community &amp;gt; Marketing
&lt;/h2&gt;

&lt;p&gt;KanaDojo’s community has been everything.&lt;br&gt;&lt;br&gt;
They’ve built features, written guides, designed UI ideas and helped test new builds.&lt;/p&gt;

&lt;p&gt;A few things that helped nurture that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Creating a welcoming Discord (for learners &lt;em&gt;and&lt;/em&gt; devs)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Merging community PRs &lt;em&gt;very&lt;/em&gt; fast&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Giving proper credit and showcasing contributors&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When people feel ownership and like they are not just the users, but the active developers of the app too, they don’t just use your app - they &lt;em&gt;grow and develop it&lt;/em&gt; with you.&lt;/p&gt;




&lt;h2&gt;
  
  
  6. Keep It Free, Keep It Real
&lt;/h2&gt;

&lt;p&gt;The project remains completely open-source and free. No paywalls, no tracking, no “pro” tiers or ads.&lt;/p&gt;

&lt;p&gt;That’s partly ideological - but also practical. People trust projects that stay true to their purpose.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If you build something good, open, and genuine - people will come, eventually. Maybe slowly (and definitely more slowly than I expected, in my case), but they will.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Building KanaDojo has taught me more about software, design, and community than any college course ever could, even as I'm still going through college.&lt;br&gt;&lt;br&gt;
For me, it’s been one hell of a grind; a very rewarding and, at times, confusing grind, but still. And I think this is just the beginning.&lt;/p&gt;

&lt;p&gt;If you’re thinking of starting your own open-source project, here’s my advice:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Build what &lt;em&gt;you&lt;/em&gt; need first, not what &lt;em&gt;others&lt;/em&gt; need.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ship early.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Care about design and people.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Stay consistent - it's hard to describe how many countless nights I had coding in bed at night with zero feedback, zero users and zero output, and yet I kept going because I just &lt;em&gt;believed&lt;/em&gt; that what I'm building isn't useless and people may like and come to use it eventually.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And most importantly: enjoy the process.&lt;/p&gt;

&lt;p&gt;You can check out KanaDojo live here:&lt;br&gt;&lt;br&gt;
👉 &lt;a href="https://kanadojo.com/" rel="noopener noreferrer"&gt;https://kanadojo.com&lt;/a&gt;&lt;br&gt;&lt;br&gt;
GitHub: &lt;a href="https://github.com/lingdojo/kana-dojo" rel="noopener noreferrer"&gt;https://github.com/lingdojo/kana-dojo&lt;/a&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>webdev</category>
      <category>frontend</category>
      <category>react</category>
    </item>
    <item>
      <title>#HowToJavaScript (2): How To Get The First Element In An Array</title>
      <dc:creator>てんとう虫 🐞</dc:creator>
      <pubDate>Sat, 29 Jan 2022 07:43:44 +0000</pubDate>
      <link>https://forem.com/tentoumushi/howtojavascript-2-how-to-get-the-first-element-in-an-array-5b1a</link>
      <guid>https://forem.com/tentoumushi/howtojavascript-2-how-to-get-the-first-element-in-an-array-5b1a</guid>
      <description>&lt;p&gt;It is notoriously hard to get the first element of a JavaScript array - yet it's also one of the most common operations you will ever perform, according to this StackOverflow &lt;a href="https://stackoverflow.com/questions/4090491/how-to-get-the-first-element-of-an-array" rel="noopener noreferrer"&gt;article&lt;/a&gt;. But unfortunately, most of the time, the platform is filled with all sorts of rubbish solutions by rubbish programmers, as is the case with our particular problem. So, I have decided that I, in fact, will not tolerate such injustice in this world - a world where you can't even get the first element of an array in JavaScript. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ouvbsoer6k78w58upg4.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ouvbsoer6k78w58upg4.jpg" alt="Mahatma Gandhi" width="800" height="998"&gt;&lt;/a&gt;&lt;br&gt;
"Be the change you want to see in the world" - Mahatma Gandhi&lt;br&gt;
&lt;strong&gt;Let's go!&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;STEP 1&lt;/strong&gt;. Initialize a function to get zero as an English word (string)&lt;br&gt;
  step 1.1. initialize a variable to store 'null' in it, which is German for the English word 'zero'&lt;br&gt;
  step 1.2 initialize a variable to store some of the German-English numbers translations as an object (the keys will be the numbers in German, while the values will be their English equivalents) (20 will be enough)&lt;br&gt;
&lt;strong&gt;STEP 2&lt;/strong&gt;. Loop over the keys of the variable created in step 1.2 (someGermanNumbersInAnObject) using a JavaScript &lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...of" rel="noopener noreferrer"&gt;for...of&lt;/a&gt; loop&lt;br&gt;
  step 2.1. create a zeroInEnglish variable to store the string 'zero' in it later on&lt;br&gt;
  step 2.2. compare every German number from the array of German numbers with the string 'null' (String(zeroInGerman)) and set the variable zeroInEnglish to 'zero' if the condition is true&lt;br&gt;
  step 2.3. return the zeroInEnglish variable&lt;br&gt;
&lt;strong&gt;STEP 3&lt;/strong&gt;. Create a function that will return the string 'zero' as an integer (0). The function will take accept a string representation of a number, and will return the integer representation of said number&lt;br&gt;
  step 3.1. define a zeroAsAnIntegerVariable variable to store zero as an integer inside it later&lt;br&gt;
  step 3.2. check the argument given to the function, and set zeroAsAnIntegerVariable to the integer representation of the argument, depending on what the argument is (it's a string representation of a number in English)&lt;br&gt;
  step 3.3. return zeroAsAnIntegerVariable (which is expected to be 0). Don't forget to convert zeroAsIntegerVariable from a string back to an integer back and forth EXACTLY 4 times&lt;br&gt;
&lt;strong&gt;STEP 4&lt;/strong&gt;. And finally, multiply 0 (which we got using our previous function's return value) by The Holy Number, and then divide it by 69, and then divide it by 420. Then, put the result of this expression inside the square brackets placed directly after our input array (arrayThatWillBeGivenWhoseFirstElementWillBeReturned). Voila!&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;const&lt;/span&gt; &lt;span class="nx"&gt;getFirstElementOfTheArrayThatWillBeGivenAsThisFunctionsArgument&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="nx"&gt;arrayThatWillBeGivenWhoseFirstElementWillBeReturned&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="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;getAnArrayOfAnObjectsKeysAsStrings&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;Object&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// we will need this to get all the keys of an object&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;theHolyNumber&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;69&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;420&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// we will need this to get the first (0th) element of our array at the end&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;getZeroInEnglish&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="cm"&gt;/* STEP 1 */&lt;/span&gt;
        &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;zeroInGerman&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;// step 1.1&lt;/span&gt;
        &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;someGermanNumbersInAnObject&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="c1"&gt;// step 1.2&lt;/span&gt;
            &lt;span class="na"&gt;null&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;zero&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;eins&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;one&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;zwei&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;two&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;drei&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;three&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;vier&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;four&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;funf&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;five&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;sechs&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;six&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;sieben&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;seven&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;acht&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;eight&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;neun&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;nine&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;zehn&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ten&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;elf&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;eleven&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;zwolf&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;twelve&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;dreizehn&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;thirteen&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;vierzehn&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;fourteen&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;funfzehn&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;fifteen&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;sechzehn&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;sixteen&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;siebzehn&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;seventeen&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;achtzehn&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;eighteen&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;neunzehn&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;nineteen&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;zwanzig&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;twenty&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
        &lt;span class="p"&gt;};&lt;/span&gt;
        &lt;span class="cm"&gt;/* STEP 2 */&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;let&lt;/span&gt; &lt;span class="nx"&gt;germanNumber&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="nf"&gt;getAnArrayOfAnObjectsKeysAsStrings&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
            &lt;span class="nx"&gt;someGermanNumbersInAnObject&lt;/span&gt;
        &lt;span class="p"&gt;))&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;yourMom&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;`how's your ma?`&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// it's a surprise tool that will help us later&lt;/span&gt;
            &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;zeroInEnglish&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// step 2.1&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;germanNumber&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="nc"&gt;String&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;zeroInGerman&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="c1"&gt;// step 2.2&lt;/span&gt;
                &lt;span class="nx"&gt;zeroInEnglish&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;someGermanNumbersInAnObject&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;germanNumber&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;zeroInEnglish&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// step 2.3&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="cm"&gt;/* STEP 3 */&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;getZeroAsAnIntegerWhichIsAWholeNumber&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="nx"&gt;zeroAsAnEnglishWord&lt;/span&gt;
    &lt;span class="p"&gt;)&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;zeroAsAnIntegerVariable&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// step 3.1&lt;/span&gt;
        &lt;span class="k"&gt;switch &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;zeroAsAnEnglishWord&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="c1"&gt;// step 3.2&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;zero&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&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;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;one&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&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;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;two&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
                &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;three&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
                &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;four&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
                &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;five&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
                &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;six&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&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="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;seven&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
                &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;eight&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
                &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;nine&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&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="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ten&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
                &lt;span class="nx"&gt;zeroAsAnIntegerVariable&lt;/span&gt; &lt;span class="o"&gt;=&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="k"&gt;return&lt;/span&gt; &lt;span class="o"&gt;+&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="o"&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;zeroAsAnIntegerVariable&lt;/span&gt;
            &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;toString&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
            &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;toString&lt;/span&gt;&lt;span class="p"&gt;()).&lt;/span&gt;&lt;span class="nf"&gt;toString&lt;/span&gt;&lt;span class="p"&gt;()).&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;// step 3.3&lt;/span&gt;
    &lt;span class="p"&gt;};&lt;/span&gt;
    &lt;span class="cm"&gt;/* STEP 4 */&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;arrayThatWillBeGivenWhoseFirstElementWillBeReturned&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;getZeroAsAnIntegerWhichIsAWholeNumber&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;getZeroInEnglish&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;
            &lt;span class="nx"&gt;theHolyNumber&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;
            &lt;span class="mi"&gt;69&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;
            &lt;span class="mi"&gt;420&lt;/span&gt;
    &lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;

&lt;span class="cm"&gt;/* TESTING OUR FUNCTION */&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="nf"&gt;getFirstElementOfTheArrayThatWillBeGivenAsThisFunctionsArgument&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="mi"&gt;3&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;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;69&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;420&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 you enjoyed this practical JavaScript tutorial by me, make sure to like this guide and follow me for more #HowToJavaScript tutorials in the future! Cheers.&lt;/p&gt;

</description>
      <category>jokes</category>
      <category>javascript</category>
    </item>
    <item>
      <title>How To Efficiently Get The Last Element Of An Array In JavaScript</title>
      <dc:creator>てんとう虫 🐞</dc:creator>
      <pubDate>Thu, 20 Jan 2022 16:08:01 +0000</pubDate>
      <link>https://forem.com/tentoumushi/how-to-efficiently-get-the-last-element-of-an-array-in-javascript-1f1b</link>
      <guid>https://forem.com/tentoumushi/how-to-efficiently-get-the-last-element-of-an-array-in-javascript-1f1b</guid>
      <description>&lt;p&gt;Do you ever find yourself wanting to get the last element of a given array in a clean AND efficient (performance-wise) way? Well, look no more, as this tutorial is right for you then.&lt;br&gt;
Let's just over the required steps real quick:&lt;br&gt;
Step 1. Initialize a variable to keep track of the count;&lt;br&gt;
We will need this variable later when we'll be calculating the length of the input array.&lt;br&gt;
Step 2. Loop over the input array, THRICE;&lt;br&gt;
In order to correctly find the length of the array, we need to loop over it 3 times first. &lt;br&gt;
Step 3. Extract the cubic root method from the Math object;&lt;br&gt;
We will need it to find the length of the array&lt;br&gt;
Step 4. Find the length of the array;&lt;br&gt;
Using the aforementioned Math.cbrt() method, we will now find the length of the array&lt;br&gt;
Step 5. Initialize a function that will calculate and return one;&lt;br&gt;
This function will calculate and return one, which we will need for further calculations&lt;br&gt;
Step 6. Get the last element of the array;&lt;br&gt;
And finally, get the last element of the input array. Phew, finally!&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;const&lt;/span&gt; &lt;span class="nx"&gt;getLastElementOfTheGivenArray&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;inputArray&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="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;counterVariableToKeepCountOfTheCount&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="c1"&gt;// initialize a counterVariableToKeepCountOfTheCount variable to keep count of the count, step 1&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;let&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="nx"&gt;inputArray&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="c1"&gt;// step 2&lt;/span&gt;
        &lt;span class="c1"&gt;// beginning of for loop&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;let&lt;/span&gt; &lt;span class="nx"&gt;j&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="nx"&gt;inputArray&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="c1"&gt;// beginning of for loop&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;let&lt;/span&gt; &lt;span class="nx"&gt;k&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="nx"&gt;inputArray&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="c1"&gt;// beginning of for loop&lt;/span&gt;
                &lt;span class="nx"&gt;counterVariableToKeepCountOfTheCount&lt;/span&gt; &lt;span class="o"&gt;+=&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;1&lt;/span&gt; &lt;span class="o"&gt;+&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="o"&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;3&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// increment counterVariableToKeepCountOfTheCount to correctly increment it as needed&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="c1"&gt;// end of for loop&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="c1"&gt;// end of for loop&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="c1"&gt;// end of for loop&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;cbrt&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;cubicRootOfTheGivenNumber&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// will calculate the cubic root of the counterVariableToKeepCountOfTheCount, step 3&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;lengthOfTheInputArray&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;cubicRootOfTheGivenNumber&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="nx"&gt;counterVariableToKeepCountOfTheCount&lt;/span&gt;
    &lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// this variable will hold the cubic root of the counterVariableToKeepCountOfTheCount, which is also the length of the input array, step 4&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;calculateAndReturnOne&lt;/span&gt; &lt;span class="o"&gt;=&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="c1"&gt;// step 5&lt;/span&gt;
        &lt;span class="c1"&gt;// will calculate and return one&lt;/span&gt;
        &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;one&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;69&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;420&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;69&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;419&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;34&lt;/span&gt; &lt;span class="o"&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;// this variable will hold one&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;one&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// returns one&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;inputArray&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;lengthOfTheInputArray&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nf"&gt;calculateAndReturnOne&lt;/span&gt;&lt;span class="p"&gt;()];&lt;/span&gt; &lt;span class="c1"&gt;// returns the last element of the input array, step 6&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="nf"&gt;getLastElementOfTheGivenArray&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="mi"&gt;3&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="c1"&gt;// expected output: 4&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you enjoyed this JavaScript guide, make sure to stay tuned for future tutorials by me. Cheers!&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>jokes</category>
    </item>
  </channel>
</rss>
