CodeNewbie Community 🌱

Kingsley Odibendi
Kingsley Odibendi

Posted on • Edited on

JavaScript Chronicles..

Documenting my JavaScript Journey starting today 16/6/2022

I’ll be the using ā€œTheOdinProjectā€ website as my resource.

Today i learnt about variables.

A variable is a storage container that holds data in your code. I also learnt that there was an old-school format using ā€œvarā€ and the more new-school format using the ā€œletā€

An Illustration:
let message = ā€˜Hello World!’;

Here;
let is our variable keyword
message is the name of the variable
= means an ā€œassignment operatorā€
Hello World is the data
; is very important also, so never miss it

I also learnt that we could copy data into another. Example:
If we declare let hello = ā€˜Hello World’;
To copy this data into another variable, we can declare..
let message;
message = hello;
** in this illustration above, we have successfully copied the data in hello into message.

I also learnt that declaring the same variable twice would lead to a syntax error eg:
If we say let message = ā€˜Hello’;
and also type let message = ā€˜World’;...we would get a syntax error in our code because we declared the message variable twice..

Lastly, i learnt that we could use symbols like $ and _ as our variable name.

DAY 2 (17/6/22)
Today, i first went through yesterday’s learning briefly.
Then i learnt about Variable naming, and how there are limitations on variable names in JS which are:
1)The name must contain only letters, digits or the symbols ā€˜$’ and ā€˜_’
2)The first character must not be a digit.

A side note when naming is that when the name contains multiple words, ā€œcamelCaseā€ is commonly used ie every other word starts with a capital letter except the first word eg ā€˜myCurrentAddress’

Next, i got to know that there are a list of reserved words like ā€œlet,class,function,returnā€ that can not be used as variable names because they’re already used by the language itself.
Using this reserved words would result in a syntax error
eg: let return = 5; is an error cause ā€˜return’ is a reserved word.

I also got to know that in the old times, it was technically possible to create a variable by a mere assignment of the value without using ā€œletā€. How?
This works of you don’t put ā€œuse strictā€ in our scripts to maintain compatibility with old scripts. It is a good practice to declare..
num = 7;
alert(num); // 7
...Because we did not include ā€œuse strictā€
Doing this instead is a bad practice..
ā€œuse strictā€;
num = 7;

Next, i learnt about ā€œConstantsā€
•Constants are unchanging variable that cannot be reassigned. Doing so would result in an error. To declare a constant, use ā€˜const’ instead of ā€˜let’. Eg:
const myBirthday = ā€˜19.12.1998’;

•There is a general practice to use constants as alliases for difficult-to-remember values that are known prior to execution. Such constants are named using Capital Letters and Underscores. Eg:
const COLOR_RED = ā€œ#F00ā€;
Benefits of this includes:

  • ā€˜COLOR_RED’ is easier to remember than ā€œ#F00ā€
  • when reading the code, COLOR_RED is much more meaningful than #F00.

I also learnt about when to use capitals for a constant and when to name it normally..
• We use capitals for constants that are ā€œhard-codedā€ ie when the value is known prior to execution and directly written into the code. eg: COLOR_RED in the illustration above...whereas
• We name constants normally for those constants that are calculated in run-time during the execution, but do not change after their initial assignment. Eg: const age = someCode(birthday);
Here, age is evaluated in run-time. It is calculated, so we use a lowercase for it.

Lastly, i did some tasks on variables, giving the right name and constants to solidify my learning.

Day 3 (18/6/22)
Firstly, i briefly reviewed yesterday’s lesson and re-did the tasks.

Today, i learnt about ā€œNumbersā€
• Numbers are the building blocks of programming logic and there’s hardly any programming task that doesn’t require at least a little basic math. I love math to some extent so this wasn’t scary lolšŸ˜‚.
• Numbers can be ā€˜literals’ or ā€˜variables’...egs of literals are 1,2,3 and egs of variables are a,b,c.

The Arithmetic Operators were basic operators like: + - / * etc..some other newer ones like % which is remainder, ** which is exponentiation, ++ which is increment, —- which is decrement etc...
NOTE: The numbers in an arithmetic operation are called ā€œoperandsā€.

Some simple arithmetic examples:
1) ADDITION: The addition operator (+) adds numbers..
<br> let x = 100 + 50;<br> document.getElementById(ā€œdemoā€).innerHTML = x;<br>
...The output of this arithmetic operation would be 150. p/s:the ā€œdemoā€ would be referenced in the .html file.

2) REMAINDER: The modulus operator (%) returns the division remainder..
<br> let x = 5;<br> let y = 2;<br> let z = x % y;<br> document.getElementById(ā€œdemoā€).innerHTML = z;<br>
...The output of this arithmetic operation would be 1 because the symbol % means remainder, and 5 divided by 2 gives 2 R 1..

3) EXPONENTIATION: The exponentiation operator (**) raises the first operand(number) to the power of the second operand..

let x = 5;
let z = x ** 2;
document.getElementById(ā€œdemoā€).innerHTML = x ** 2;

...The output of this arithmetic operation would be 25 because 5 raised to the power of 2 is 5*5 which is 25..

NOTE: There are multiple other operators that could be used for more complex math.

Day 4 (20/6/22)
Happy Coding Week!
•Today i got into more details on ā€œNumbersā€ referencing MDN web docs and also tested out the console in the dev tools..

I learnt about the different types of numbers in programming which includes:

  • Integers which are floating-point numbers without a fraction, and they can be either positive or negative eg 10,7,-2.
  • Floats which are floating point numbers that have decimal points and decimal places eg 11.25,1.25,56.7724351...
  • Doubles which are specific type of floating point number that have greater precision than standard floating point numbers ie it means that they’re accurate to a greater no of decimal places..

•Also learnt about different types of number systems which includes:

  • Decimal: They are base 10 meaning it comprises of 0-9..
  • Binary: The lowest level computer language which comprises 0s and 1s..
  • Octal: They are base 8 and uses 0-7 in each column..
  • Hexadecimal: came across these in css..they are base 16 and uses 0-9, and a-f in each column.

NOTE: JavaScript only has one data type for numbers, both integers and decimal and it’s ā€œNumberā€..this means that whatever type of no you’re dealing with in JS, you handle them in exactly the same way.

Next, i walked through some examples to reacquaint with basic syntax, which are:
1) Declare a couple of variables and initialize them with an integer and a float respectively, then type the variable names back in to check everything is in order:
const myInt = 6;
const myFloat = 1.197;
myInt; // this returned 6
myFloat; // this returned 1.197
NOTE: number values are typed in without quotes..

2) To check that both our original variables are of the same datatype, we use an operator called ā€œtypeofā€:
typeof myInt;
typeof myFloat;
// ā€˜number’ was returned in both cases..

Next, i learnt about Useful Number Methods..
• The ā€œNumberā€ object represents all standard numbers you’ll use in JS, and has a no of useful methods available on it to manipulate numbers.
For eg, To round your number to a fixed number of decimal places, use the ā€œtoFixed()ā€ method. Eg:
const lotsOfDecimal = 1.76658958675746364;
const twoDecimalPlaces = lotsOfDecimal.toFixed(2);
twoDecimalPlaces;

Next, i learnt about Converting to number data types..
•Sometimes you might end up with a no that is stored as a string type, which makes it difficult to perform calculations with it. This most commonly happens when data is entered in a form input, and input type is ā€˜text’..The way to fix this problem is —- passing the string value into the Number() constructor to return a no version of same value. Eg:
If you declare,
let myNumber = ā€˜74’;
myNumber += 3;
..The result is 743, not 77 because ā€œmyNumberā€ is actually defined as a string. To test this, type the following in the console:
typeof myNumber;
// this will return ā€˜string’
To fix the calculation, do this instead:
let myNumber = ā€˜74’;
Number(myNumber) + 3;
// the result is then 77 as expected..

Next, i learnt about Arithmetic operators which I’ve previously touched on..did basic calculations on addition, multiplication, remainder, exponentiation, increment and decrement and lastly touched on Operator Precedence (this is simply BODMAS where for eg division precedes multiplication and vice versa..)

Day 5 (21/6/22)
Firstly, i reviewed yesterday’s lessons..
Next, i learnt about ā€œAssignment Operatorsā€

• Assignment Operators are operators that assign a value to a variable. The most basic and common one being ā€˜=ā€˜ — it assigns the variable on the left the value stated on the right. Eg: if you declare,
let x = 7; // this assigns x the value of 7
let y = 9; // this assigns y the value of 9
x = y; // here, x contains the same value as y which is 9..

• There are some more complex types, which provides useful shortcuts to keep our code neater and more efficient. They include:

  • ā€˜+=ā€˜ this is an addition assignment that adds the value on the right to the variable value on the left, then returns the new variable value. Eg: x += 4; this means that x = x + 4;

  • ā€˜-=ā€˜ this is a subtraction assignment that subtracts the value on the right from the variable value on the left, then returns the new variable value. Eg: x -= 4; this means that x = x - 4;

  • ā€˜*=ā€˜ this is a multiplication assignment that multiplies the value on the left by the variable value on the right, then returns the new variable value. Eg: x *= 4; this means that x = x * 4;

  • ā€˜/=ā€˜ this is a division assignment that divides the value on the left by the variable value on the right, then returns the new variable value. Eg: x /= 4; this means that x = x / 4;

•Next, i learnt about ā€œComparison Operatorsā€..
We use Comparison operators to run true/false tests then act accordingly depending on the result of that test..
• Some egs of this includes:

  • ā€˜===ā€˜ this is a strict equality that tests whether the left and right values are identical to one another. Eg: 5 === 2 + 4 // this will return ā€œfalseā€ cause 2+4 isn’t equal to 5.

  • ā€˜!==ā€˜ this is a strict-non-equality that tests whether the left and right values are not identical to one another. Eg: 5 !== 2 + 3 // this will return ā€œfalseā€ cause 2+3 is identical to 5.

  • ā€˜<ā€˜ this is less than, that tests whether the left value is smaller than the right one. Eg: 10 < 6 // this will return false cause 10 is not smaller than 6.

  • ā€˜>’ this is greater than, that tests whether the left value is greater than the right one. Eg: 10 > 20 // this will return false cause 10 is not greater than 20.

  • ā€˜<=ā€˜ this is less than or equal to, that tests whether the left value is smaller than or equal to the right one. Eg: 3 <= 2; // this will return false cause 3 is not less than or equal to 2.

  • ā€˜>=ā€˜ this is greater than or equal to, that tests whether the left value is greater than or equal to the right one. Eg: 5 >= 4; // this will return true cause 5 is greater than 4.

Day 6 (22/6/22)
• Today, i first reviewed yesterday’s lessons.

• Next i started the ā€œTest your math skillsā€ on MDN. This comprises of 3 Math tests to access whether I’ve understood the Basic math in JS - Numbers and Operators.

• Lastly, i asked for feedback in the MDN community..

Day 7 (23/6/22)
• Firstly, i reviewed the feedback i got on my first math test by one of the community leaders, implemented them and updated my code.

•Next, i completed both the second and third math tests. Links below ā¤µļø
https://www.codepen.io/thewebking_/pen/XWZLGJG
https://www.codepen.io/thewebking_/pen/ZErdPRd

Day 8 (24/6/22)
• Today, i touched more on basic math operators..Also learnt another method to convert strings to numbers besides the Number() function, which is using the unary+ (Also the plus operator)..The unary+ applied to a single value doesn’t do anything to numbers. But if the operand is not a number, the unary plus converts it into a number..eg:

// No effect on numbers
let x = 2;
alert (+x); // 2
let y = -4;
alert (+y); // -4
// Converts non-numbers
alert ( +true ); // 1
alert ( +ā€ā€ ); // 0

• A real application of this is when you have ā€œstringsā€ and convert them to numbers, and sum them up normally. For eg:

If we declare;
let grapes = ā€œ3ā€;
let oranges = ā€œ4ā€;
alert ( grapes + oranges ); // ā€œ34ā€..this is because the binary plus concatenates(merges) strings.
To treat them as numbers instead of strings, we need to convert them and sum them:
let grapes = ā€œ3ā€;
let oranges = ā€œ4ā€;
// both values converted to numbers before binary plus..
alert ( +grapes + +oranges ); //7
// A longer approach would be..
// alert( Number(grapes) + Number(oranges) ); // 7

** This might be confusing to non-programmers, but i learnt that unary plus are applied first cause they have a higher precedence than binary plus.. The unary pluses converts strings to numbers, then the binary pluses sums them up.

•Next, i touched more on the assignment operator(=).. Learnt that Chained assignments evaluate from right to left. Eg:
let a,b,c;
a = b = c = 2 + 2;
alert(a); // 4
alert(b); // 4
alert(c); // 4
First, the rightmost expression 2 + 2 is evaluated then assigned to the variable and on the left: c,b,a..
NOTE: For the purpose of readability, write the code above this way:
c = 2 + 2;
b = c;
a = c;

Day 9 (25/6/22)
• Today, i learnt more on Increment and Decrement..
Increment ++ increases a variable by 1. Eg:
let counter = 2;
counter++; // same as saying counter = counter + 1 but shorter..
alert(counter); // 3 is the output
..The same applies to decrement - - that decreases a variable by 1..
NOTE: increment/decrement only applies to variables. Trying to use it on a value like 5++ will give an error.

• Also, the operators ++ and - - can be placed either before or after a variable.

  • it is in ā€œpostfix formā€ when the operator goes after the variable: counter++ counter—-
  • it is in ā€œprefix formā€ when the operator goes before the variable: ++counter —-counter

• Looked through a couple of examples and also saw differences between the postfix and prefix form

• Next, i learnt about the BitWise operators which are not commonly used and the comma operators that allows us to evaluate several expressions, dividing them with a comma ,.
Each of the values are evaluated, but only the result of the last one is returned. Eg:
let a = (1 + 2,3 + 4);
alert(a); // 7(the result of 3 + 4)

• Lastly, i attempted the tasks at the end of the article.

Day 10 (26/6/22)
• Today was short, but still put some little work in..
• Did a couple of practice test at the end of theodinproject JavaScript fundamentals part 1.. getting the right outputs in the console felt good, and i feel I’m getting somewhere with this..

Day 11 (27/6/22)
• Firstly, i attempted the knowledge check at the end of the foundation fundamentals part 1..This tests your overall knowledge on each lesson thus far..

• Next, i was referenced to the javascript.info article on ā€œData Typesā€ which includes Number, String, BigInt, ā€˜null’ value, ā€œundefined valueā€ and so on...
NOTE: will write a note on this when i finish this article..

Day 12 (28/6/22)
• Today i completed the article on ā€œData Typesā€...will publish my summary on the article tomorrow

• Next, i started learning ā€œStringsā€ specifically in details referencing MDN web docs.

Day 13 (29/6/22)
• Data Types
There are 8 basic data types in JS which includes 7 primitive data type and 1 non-primitive data type..

• Number: The number data type represents both integer and floating point numbers. Eg:
let n = 123;
n = 12.345;
NOTE:Besides regular numbers, there are so-called ā€œspecial numeric valuesā€ which also belong to this data type: infinity, -infinity and NaN(not a number)..we can get it as a result of division by zero:
alert( 1 / 0 ); // Infinity or
just reference it directly:
alert( Infinity); // Infinity

  • NaN represents a computational error as a result of an incorrect or an undefined mathematical operation. NaN is sticky, any further mathematical operation on NaN returns NaN. Eg: alert( NaN + 1 ); // NaN alert( 3 + NaN); // NaN ** There’s only one exception to this which is: NaN ** 0 // 1

• BigInt: The BigInt type is used to represent integers of arbitrary length by appending ā€˜n’ to the end of an integer.
Eg: const bigInt = 12345678901234567890123456789n;

• String: A string must be surrounded by quotes. In JS, there are 3 types of quotes:

  • Double quotes: ā€œHelloā€
  • Single quotes: ā€˜Hello’
  • Backticks: ā€˜Hello’(symbol isn’t available on mobile) ** Double and single quotes are ā€œsimpleā€ quotes, and there’s no difference b/w them in JS. Backticks are ā€œextended functionalityā€ quotes. They allow us to embed variables and expressions into a string by wrapping them in ${..}..For eg: let name = ā€œJohnā€; // embed a variable alert( ā€˜Hello, ${name}!’ ); // Hello, John! // embed an expression alert( ā€˜the result is ${1 + 2}’ ); // the result is 3

• Boolean (logical type): The boolean type has only two values: true and false. This type is commonly used to store yes/no values: true means ā€œyes, correctā€ and false means ā€œno, incorrectā€..For instance:
let nameFieldChecked = true; // yes, name field is checked
let ageFieldChecked = false; // no, age field is not checked
It can also be used for comparisons:
let isGreater = 4 > 1;
alert (isGreater); // true (the comparison is ā€œyesā€)

• The ā€œnullā€ value: The special null value does not belong to any of the above types. It forms a seperate type of its own which contains only the null value.
let age = null;
** null represents ā€œnothingā€, ā€œemptyā€ or ā€œvalue unknownā€.

• The ā€œundefinedā€ value: The meaning of undefined is ā€œvalue is not assignedā€. If a variable is declared but not assigned, then its value is ā€œundefinedā€..
Eg: let age;
alert( age ); // shows ā€œundefinedā€ cause value wasn’t assigned.

• Objects and Symbols: The Object type is special as all other types are called ā€œprimitiveā€ because their values can contain only a single thing(be it a string or a number or whatever). In contrast, objects are used to store collections of data and more complex entities.

  • The symbol type is used to create unique identifiers for objects.

• The typeof operator allows us to see which type is stored in a variable..

  • Usually used as typeof x, but typeof(x) is also possible.
  • Returns a string with the name of the type, like ā€œstringā€.
  • For null returns ā€œobjectā€ - this is an error in the language, it’s not actually an object.

Day 14 (30/6/22)
• Today marks 2weeks I’ve been learning javascript..Big milestone for me, and so far so good!!

• I learnt the Basics of ā€œStringsā€ in details referencing MDN web docs. Things like:

  • Creating a String.
  • Using Single quotes vs Double Quotes.
  • Escaping characters in a string. To do this, we use backlash() just before the character.
  • Concatenating Strings..this involves joining strings together using a different type of string called ā€œtemplate literalā€ ie backtick characters. It works just like a normal string, except you can include variables in it, wrapped inside ${} characters.
  • Concatenation in Context
  • Concatenation using ā€œ+ā€
  • Numbers vs Strings
  • Including expressions in strings
  • Multiline Strings

Day 15 (1/7/22)
• A new month, and today i learnt a bit more about what i could do with strings, by referencing a W3Schools article on ā€˜JavaScript string methods’.
...I’ll admit that this was a tad confusing and I couldn’t get a grasp of it..fell asleep couple times too but i believe if i go through the article again and attempt some exercises, I’ll get it.

Day 16 (3/7/22)
• Usually take breaks on Saturdays, and yesterday wasn’t an exception..

• Today, i completed the w3schools article on ā€œJavaScript String Methodsā€ and did the exercises.. My takeaway was that I’m getting to the business side of JavaScript, and while I’ll need to re-read a couple times to really digest this article, learning JS isn’t something to cram or memorize because there’s a lot to know. So my goal is to be able to atleast get a basic grasp of each concept, and i can always reference different articles when i need them in future.

Day 17 (4/7/22)
• Nearly missed journaling today, but better late than never..

• Today, i learnt ā€œExhaustive list of methods that can be using on Stringsā€...detailed article on MDN docs, and one I’ll revisit in future to better solidify the concepts.

Day 18 (5/7/22)
• Today, i started learning about ā€œConditionalsā€

•Conditionals teach the computer how to make decisions in order to do more involved things.
The first step in learning about conditionals is to have a good grasp of comparisons. In JavaScript, comparisons are written like this:
-Greater/less than: a > b a < b
-Greater/less than or equals: a >= b a <= b
-Equals: a == b the ā€œ==ā€œ means equality sign
-Not Equals: a != b

NOTE: All comparison operators return a boolean value ie true or false.

•I also learnt about different types of comparisons which includes:

  • String Comparison: Here, strings are compared letter by letter
  • Comparison of different types: Here, JavaScript converts the values to numbers.
  • Strict Equality: A strict equality === checks the equality without type conversion.
  • Comparison with null and undefined.

** Looked through some examples, tested it on my console and did the tasks at the end. **

Referenced JavaScript.info article..

• Next, I learnt about if, else and else if conditional statements..
In JavaScript, we have the following conditional statements:

  • Use ā€˜if’ to specify a block of code to be executed if a specified condition is true.
  • Use ā€˜else’ to specify a block of code to be executed if the same condition is false.
  • Use ā€˜else if’ to specify a new condition to test if the first condition is false.
  • Use ā€˜switch’ to specify many alternative blocks of code to be executed

• Referenced w3schools.com article

Day 19 (6/7/22)
• Today, i first revised my summary on yesterday’s lesson.
Next, i learnt about ā€œLogical Operatorsā€ which includes:

  • || (OR)
  • && (AND)
  • ! (NOT)
  • ?? (Nullish Coalescing) PS: I only covered the first three today..

• The OR || does the following:

  • Evaluates operands from left to right
  • For each operand, converts it to boolean. If the result is true, stops and returns the original value of that operand.
  • If all operands have been evaluated (ie all were false), it returns the last operand.

• The AND && operator does the following:

  • Evaluates operands from left to right
  • For each operand, converts it to a boolean. If the result is false, stops and returns the original value of that operand.
  • If all operands have been evaluated(ie all were truthy), it returns the last operand.

• The NOT ! operator accepts a single argument and does the following:

  • Converts the operand to boolean type: true/false
  • Returns the inverse value.

NOTE: I referenced JavaScript.info article for this lesson...possibly the best javascript based website. The last task ā€œCheck the loginā€ was tricky for me, and had me scratching my head a couple times..it was a combination of variables, comparisons, if conditions and logical operators. I’ll attempt it again tomorrow, this time without looking at the solution to be sure i have it embedded in my head. I can officially say I’m getting to the really business side of JS😬

Day 20 (7/7/22)
• Today, i really took time to re-attempt the ā€œCheck the loginā€ task I mentioned yesterday. I made sure I attempted it without first looking at the solution, then while reviewing my mistakes, i ensured I understood the ā€œwhyā€ of each step.

• Next, i referred to MDN web docs article that reinforces all these concepts and provided several examples of how to use these concepts in building websites... Not done with the article yet, will continue from ā€œswitch statementsā€ tomorrow.

Day 21 (8/7/22)
• Today was abit off, i started learning late and was just off pace.. still i continued learning from ā€œswitch statementsā€ which i fully grasped, but as i delved into ā€œTernary operatorā€, I couldn’t grab a thing..

• I’ll take a day break, and I’ll be back on this MDN article by sunday to really understand and attempt the tasks at the end..

Day 22 (10/7/22)
• Note to self is never to underestimate the magic in taking a break and recharging, but never make the mistake of extending your break past 2days max so it doesn’t lead to procrastination.

• I was back on the MDN web docs today, read it slowly to fully grasp the article and for some reason today’s read stuck. I attempted the tasks at the end, made some mistakes and corrected myself after looking at the solution. Re-attempted it again and educated myself on why a condition was written a certain way and not the other way.

Day 23 (11/7/22)
• Today, i practiced the ā€œTest your skillsā€ section of MDN web docs. This skill test was primarily on ā€œConditionalsā€.

• It consists of 4 conditional tests, and i attempted 2 today. Link to the test:

https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/Test_your_skills:_Conditionals

Links to my attempted solutions:
Conditionals 1: https://codepen.io/thewebking_/pen/ExEyQBz

Conditionals 2:

https://codepen.io/thewebking_/pen/ZExOxeZ

Side Note: I asked for feedback in the community especially with the conditionals 2 test..will complete the rest tomorrow.

Day 24 (12/7/22)
• Today started off lazy on my end, but i still had to put in work and i did..i was able to refix my Conditionals 2 code and had it working. Most importantly, i understood why it was working and why it wasn’t. New link here:

https://codepen.io/thewebking_/pen/XWEjmGJ

• Next, i attempted the 2 remaining conditionals tasks
https://codepen.io/thewebking_/pen/vYRXNyX

https://codepen.io/thewebking_/pen/PoRGZby

Note to Journal: Tomorrow till Saturday will be really hectic for me, so i might not be able to code and update my journal as I’ll be preparing for service camp (registration/buying stuff)..and the next 3 weeks after..Hope I’ll retain all these information learnt thus far till i will be fully back to coding continuously again..

Day 25 (18/7/22)
• Hey journal, feels good to update you once again! The past week was really hectic and stressful on my end..life happens, and sometimes when it does, it keeps us away from the code. Not back fully even tho i did procrastinate yesterday being sunday, but i ensured to not make it two days in a row.

• Today, I’m still following the Odin Project, and i must admit i love the way the course curriculum is arranged with additional review resources/articles on topics that have been previously learnt. So today’s learning was more of refreshing my mind on ā€œConditional Statementsā€ and ā€œSwitch Statementsā€ this time referencing two detailed articles on JavaScript.info and digitalocean.com respectively..

• Tomorrow, I’ll be working on a practice assignment that comprises of 4 exercises. I’m looking forward to practicing the things i have learnt thus far.

Day 26 (19/7/22)
• Links to the 4 practice assignments i worked on in the OdinProject:

Day 27 (23/8/22)
•Today makes it exactly 1month and 4days since i last updated my journal. Mehn, the past month was filled with lots of different experiences on my end. Liked i said in previous posts prior to my seemingly long break, i went for a 3weeks mandatory camping exercise. While laptops weren’t allowed which hindered me from coding, it was a fun experience. I socialized, had new experiences, travelled to a new city I haven’t been before and made two techie friendsšŸ¤“..I also took another one week break to further re-energize and recharge, and it sure feels good to be back coding and journaling.

•All that aside, I’m happy to be back and learning code, and hopefully putting in work 6times a week.

•Today, i started learning ā€œRegular Expressionsā€ using the Net Ninja’s series on YouTube. Well detailed and well explained. Now, i know how matches are found and the different sets of characters used to accomplish this. Not done with the series yet but I’ve learnt a lot so far.

Day 28 (24/8/22)
•Completed the Net Ninja series on Regular Expression. Learnt that RegEx is a set of characters that helps in matching. Learnt about character sets, meta characters and their meanings and functions. Quite insightful, tho there’s alot more to this than the series, but the series is an eye opener, educative and beginner friendly.

•Here’s a link to the playlist:

https://youtube.com/playlist?list=PL4cUxeGkcC9g6m_6Sld9Q4jzqdqHd2HiD

Day 29 (25/8/22)
•Today, i did a quick recap on topics like conditionals, logical operators etc..

•The next topic in the curriculum would be on JavaScript Developer Tools. Here, I’ll be going through the chrome docs to master how to use my developer tools as a web developer.

Top comments (3)

Collapse
 
stark profile image
Brandon

Was helping my sister with her new baby and needed something to do during nap time. Looked for a site to relax with and saw winners-casino.uk . It’s easy to use and packed with games. For real it’s a UK gem with bonuses like extra funds when you start and free spins too plus a big mix of slots and table games easily over 180 options. Liked how it gave me a chill way to pass the time.

Collapse
 
andw45 profile image
Andrew O.

My love of nature and the freeing fiat ducato hecktür experiences it provided, even as a small child, set the path for an extraordinary adventure.

Collapse
 
illyazaharov profile image
IllyaZaharov • Edited

In the culinary world, staying abreast of new techniques and recipes is key to innovation and skill enhancement. The ability to save YouTube videos for offline reference using easytube.pro/ has been a boon for chefs and culinary enthusiasts. This platform allows for the downloading of instructional videos in a variety of formats, making them accessible on any device - an essential feature in the fast-paced and varied environments of youtube users