I post about web development, movies, web-series, productivity, life lessons, coding, business, marketing. Share my insights about various topics through essays, stories and guides (tutorials)
Logic building is a crucial and complex skill in programming. In essence, it is ability to come-up with solution of coding problem and write precise instructions ( or code) that a computer can execute autonomously. This skill requires aligning your thought process with computer and its capabilities. And running through code some-what abstractly to know and predict the behavior of code before it is executed. To be able to do this, one essential step that many beginner programmers overlook is performing dry runs. Understanding Dry Runs The concept of a dry run in programming is straightforward: can you mentally execute your code and predict its output without actually running it on a computer? While this seems simple, it is a challenging task. Typically, we are taught to write code, run it, and observe the output. This cycle is essential because code needs to run to be validated. However, if you rely solely on running your code to understand its behavior, you may struggle with building...
Get link
Facebook
X
Pinterest
Email
Other Apps
Building JavaScript Array Methods from Scratch in 2024 - Easy tutorial for beginners # 1
Get link
Facebook
X
Pinterest
Email
Other Apps
-
Hi guys, in this blog we will be build JavaScript array methods as a function from JavaScript basics as it is great and simple way to refine your JavaScript programming skill and make your fundamentals strong as beginner and you’ll also know various JavaScript array methods along the way, we will start from easiest to more complex ones, i have try to keep it as beginner friendly as possible.
First, i will be introducing the array method with their example input and output, then we will examine those methods, identifying which programming tools and tricks to used and in which order to arrange them.
Along that process we will build pseudocode algorithm for required function and later on, i will show you flowchart version of that algorithm, the important tip that i can give to you all, to get most out of this blog, is to first try to build it by yourself then come to this blog.
1. Array.isArray() :
So lets, start with simple one Array.isArray() method. The Array.isArray() method is static method determines whether the passed value is an Array.
So, how will we find if given argument passed to function is of type array? Well, remember whenever you are stuck with problem like this, it is always helpful to go back to basics. let’s start with question “what is argument passed to function? can it give any information about itself?”
and the answer is yes, remember that Almost everything in the language is an object including arrays and functions or gets treated as an object. Objects are a fundamental part of JavaScript. Even primitive data types like strings and numbers can be special temporary objects that provide extra functionality.
If you dig into this object, you can find one useful property called constructor which stores data type of data, and can be utilized for our purpose.
So let's start working on pseudocode:
First we need to initialize function, let call it isArray. Inside function write if statement to check if argument.constructor is equal to array and return the result.
Initialize function name isArray
Check if argument.constructor is equal to Array
If true return true and vice versa
But now there is an edge case to take care of, what if argument passed down is null or undefined, we still have to pass false in that case. So, to update our code we need to check if argument is null or undefined and return false if yes.
Initialize function name isArray
Check if argument is null or undefined
if true return false
Check if argument.constructor is equal to Array
If true return true and vice versa
Here is flowchart representation of algorithm:
Now let’s code it up with javaScript :
2. Array: length :
Next isarray’s length method. Well, actually it is an array property, but for learning sake, we will make function similar to it.
As its name suggests, it gives number of elements in particular array, so the function that we will be building have to return value, which represent element's number. So at the end, function will be returning value, or variable containing value which represents number of elements.
Thinking like that, we will be needing variable which keeps track of number of elements. And that first it should be of value zero. Let name it count, but how we will count elements? We need something which goes through each element and increment count variable by one. So loop sounds perfect for it.
But how can we use loop if we don't know length of the array? For this we can use for of loop which loops through the values of an iterable object.
Now, we have all essential parts to make a proper algorithm. First, initialize function, let's name it length. Then, initialize variable name count with value zero. Next, implement a for of loop, in which increment count variable by one in each iteration. And finally, return count variable.
Initialize function name length
Initialize variable name count with value 0, // which keeps track of number of elements
Implement “for of ” loop in which increment count by 1 in each iteration
return count
But what if argument pass to function is not array but other data type? To deal with this edge case, we have to check if argument is an array in the first place. Now, I will encourage you all to think, how can we check if given argument is an array? Stop and ponder.
Well, for this we can use isArray method which we have build earlier. Now, modifying the code. Check if argument is an array. If not then throw an error.
Here is the flowchart representation of the algorithm;
Now let's code it up with JavaScript:
Well, that's all for today. I hope this blog was useful for you and thank you for reading.
In this post, I will be talking about two methods to learn how to program. The first method (common method) is a step-by-step tutorial approach like following a tutorial. It goes something like this: "Step one, create this component." The tutorial then provides you with detailed instructions on how to create that specific component. "Step two, do this," and you follow the next set of instructions. And when instructions finish you study and repeat the same instruction. This method gives you precise steps to follow. However, the issue here is that the person who created these steps went through a trial-and-error process themselves. They tried something, it didn't work, so they tried something else. They repeated this process until they found a solution that worked. What you're doing by following these steps is simply replicating their final result, which doesn't foster deep learning or problem-solving skills. Second method: The better way to learn progra...
Source code Building user interfaces can be a daunting task, especially when working with dynamic and interactive components. React, a popular JavaScript library developed by Facebook, simplifies this process by enabling developers to create reusable UI components. To utilize and harness the full power of React, it’s essential to adopt a specific mindset known as "Thinking in React". This approach involves breaking down the UI into components, managing state effectively, and ensuring a seamless data flow. In this article, we’ll explore the principles of Thinking in React and provide a step-by-step guide to building efficient and maintainable user interfaces with a practical example. And along the way we will map it to analogy for better understanding. Understanding the Core Principles Before diving into the practical aspects of Thinking in React, it’s important to grasp the core principles that underpin this methodology: Component-Based Architecture : React promotes the...
Comments
Post a Comment