Tim - I am very impressed by your teaching technique. As a 58 year old database programmer, I learned a lot about JavaScript from your 16-part tutorial and this video really cemented the concepts you covered earlier. You have a bright future ahead of you! Keep plugging along.
I am a new JavaScript language learner and seeing a "real project" taught me a lot, even though it was challenging for me. Thanks to this video, I realized that I need to work harder. Thanks a lot for this great value!
@@ihatethewind Only if they are declared the old way with "function" keyword. If they are declared with the new ES6 way, the "arrow" => functions, they are not. Arrow functions are not getting hoisted.
i just finished the project,it was helpful, i did many things my own way I find that the best way to learn, sometimes I see that your solution is better than mine so I change it sometimes I find that mine is better or easier to understand so I keep it, again this was very helpful I always like this project series keep them coming!
Hi Tim I have just finished this project in one go without stuck anywhere. You explained quite well. Thank you for this project. I am going to use this on my portfolio.
I completed this video 4 whole weeks ago! Wow! I just came back today to rebuild it, with functional programming concepts, and man, I know my life has revolved around JavaScript for the last 4 weeks, but coming back to videos like these have really helped me understand how to properly use conditionals, and most of all, how to organize my builds with a functional programming mind frame. I separate the date from the functions, and I use map and join for the reels. I broke it up into a bunch of smaller functions with specific tasks.
Great video, learning by practicing is so much better. Even if all you do is copying a few lines of code that you see in each lesson. Much more effective than just taking notes. I know this because I tried everything and the only way I could learn (and retain what I learned) was when I started doing that. Once a friend suggested me a few books with interactive content, that made me practice what I learned at each chapter. Edit: For those asking about the books I mentioned, these are the best ones: "Javascript In Less than 50 Pages" "Head First Javascript Programming" If you are into learning Python, "Smarter Way to Learn Python".
@@myke6972 I'm just a hobby coder, but from what I've read from people that do it professionally the answer is yes. They lookup in docs and posts on places like stack exchange all the time. No need to re-invent the wheel when working.
I think a lot of people are missing out from the real intention of this video. He is simply going though all the vanilla JavaScript topics any newbie or beginner should be familiar with in thier early stages of JavaScript development . Topics such as declaring and assigning variables, for loop or while loop, JavaScript functions arrow functions, debugging etc He is simply trying to do what should normally take months to learn and master and try to make it as simple and perhaps encourage learning the fundamentals I found the video extremely helpful and insightful, in so my opinion so many ways to kill a bird and surely this is one way to it Well done Tim
Thanks Tim. I just finished all my HTML, CSS now Javascript and so far I've done 2 projects, it helps a lot to see how I can actually put my knowledge to good use rather than just mindlessly learn the language. I've been struggling to find this kind of videos. so thanks again for sharing hope to see more from you.
I had to chatgpt where to start. Im adding event listeners and other elements to dynamically work with the slots. Going to make my own icons too.@@sanausman2931
For those who get an error saying that the module is missing even though it's there, try uninstalling node js then installing the current version instead of the lts. I got the error during the prompt sync section and this worked for me. Simply redownload the installer for the lts version then run it to uninstall it
This project was truly helpful! I just have a small suggestion regarding the code at 19:16. Instead of using (.numberOfLines > 3), it would be better to use (.numberOfLines > ROWS). Just to ensures that the code remains intact even when we alter the value of ROWS.
@@Sahil-ev5pm if I am not mistaken, it's because the first number of lines was inside of a function, meaning it isn't global. unless it is a constant outside of the function, you are free to use it again.
bro, I'm so happy u doing Javascript u can see at this moment I write this comment only in 17 hours u got 10k views this means people more love JS so please do more projects and challenges on JS so thank u bro ill follow up until the end 🙂
Tim, You're so fascinating teacher, and I love all your videos because they teach me a lot. You made me remember many things I have forgotten and that's insane, I mean, you made me see that, although have worked as a software engineer for many years, I still have many things to learn, and that made me ecstatic a little bit. So I would love to thank you for this exciting video. learning will never stop!😉😉😉
Great video! Also, when asking for amount of lines to bet on we can do this: const lines = prompt("Enter amount of lines to bet on (1-" + ROWS + "): "); so it changes as we change number of rows in our slot machine
37:06 i = 0 "LOOP keeps track how many loops we need to perform (variables) 37:14 i < COLS "BE LOOPING PER COLUMN i is less than # of columns - stop at the number of columns there is 37:27 i++ "JUST EXIT? keep looping. And exit loop ******************************************************************************************************************* 37:58 38:34 const reelSymbols = [...symbols]; "generates 39:00 copies all symbols into another array. random select symbol, add to reel 39:02 for (let j = 0; j < ROWS; j++) { remove 'rest of symbols' from reels as we add the symbols into each'next?' reel/column 38:23 'code paragraph' above is all list available symbols "per reel/column" 45:46 const randomIndex = Math.floor(Math.random() * reelSymbols.length); randomly picks one symbol that are available per row 40:38 random index round down (Math.floor) # x total available symbols (Math.random() * reelSymbols.length) 45:52 const selectedSymbol = reelSymbols[randomIndex]; inserts into reel 46:00 reels[i].push(selectedSymbol); pushes in per variable, i 42:32 we selected reel/column i 45:04 reelSymbols.splice(randomIndex, 1); remove from available symbol, to not use it again ************************************************************************************************************ for (let i = 0; i< ROWS; i++) row. pushes all symbols into rows 49:11 rows.push([]); pushes in new row - this array[] represents row 49:27 for (let j = 0; j< COLS; j++) { loops every single column 50:00 rows[i].push(reels[j][i]) accessing row-i column-j EACH ROW: 51:34 const printRows = (rows) => { prints all rows in code 51:47 for (const row of rows) { loops through all rows 52:03 let rowString = ""; prints row 53:11 += adds elements into string 53:43 if (i != row.length - 1) { rowString += " | "; does not add pipe to last symbol, accept for all other row
const rows = []; for (let i = 0; i< ROWS; i++) row. pushes all symbols into rows 49:11 rows.push([]); pushes in new row - this array[] represents row 49:27 for (let j = 0; j< COLS; j++) { loops every single column 50:00 rows[i].push(reels[j][i]) accessing row-i column-j
Thanks Tim I've been waiting for you to upload a walkthrough project in JavaScript! Would it be possible to upload a video containing simple to more difficult projects purely in JS, similar to what you've done with python? I've yet to find someone who's able to articulate and teach the way you do!
Dude you are genius. Your way of teaching is absolutely amazing and most importantly, your way of writing codes is so clean and well organized. Thanks for this tutorial.❤❤
Great video. it was tough to understand some concepts at first while following along. At the end it was all wrapped up and made sense! It was a great insight into your thought process and how you break everything into components.
Something to note at 20:30 - the order matter for const functions. If you use the function keyword, they are 'hoisted' to the top and can be placed in any order. For example, the following would work because it is using the function keyword: const numLines = promptNumLines(); function promptNumLines() { const minLines = 1; const maxLines = 3; while (true) { const lineAmount = prompt("Enter a line amount (" + minLines + "-" + maxLines + "): "); const numLineAmount = parseFloat(lineAmount); if (isNaN(numLineAmount) || numLineAmount < minLines || numLineAmount > maxLines) { console.log("Invalid line amount. Please try again."); promptNumLines(); } else return numLineAmount; } }
Great project Tim! I will take advantage of this to sharp my javascript skills. Little tip here, you forgot to increment the balance after the user won some prize playing.
Thank you so much for this tutorial! i found it really helpful as a viewer to watch your thought process live. i think learning to break down projects and think like a programmer can be one of the biggest challenges and your video helps solve that!
OMG you are the most enjoyable and amazing tutor there is, what a fantastic way of teaching, teaching from what return does to making a whole project. You are the best on the whole youtube
I watched this 4 months ago, and I had no idea what this man was saying but now I find myself auto-completing his explanations lol.. I think I have made some progress.
first of all Thank you SOOO much Tim and also, at 16:48, we could have directly called the deposit function again in the for statement instead of writing the while statement edit: Im facing an error if i do this, if I enter a positive number, it works fine but if i enter any string/negative number (as mentioned in the if stmt), it returns "undefined" (first time "properly" learning js ty!)
Do you have a video where you add the html/css etc. to complete the gambling game? I thought you'd maybe do that was well, but it makes sense if that's out of javascript function
This is a amazing video to get started with javascript. And I can relate you totally for python syntax as I am also working with python (I have learned that from your videos). Good job, please adding these kind of content. Thanks
Awesome stuff man. Really appreciate what you did. I like the delivery and entire explanation of what goes after what, which is truly important to understand if you taking it first time. Hope there was an html integration with it as well. But overall it looks fine. Thank you.
Am learning the workflow of programming in js, this project has given me a good basic stracture of what i should expect and do, I enjoyed this project and liked the results. Keep them coming. Thanks
I really liked this. Would love to see more. Consider having a simple visual done on PPT or an image editor for when you are trying to explain what the code is doing.
Yep this is what would 100% imrpove this further for people who are visual learners. I had to draw it out myself in paint to get how the for loops were working haha.
I've started learning javascript this week and saw your video while taking a break and it's inspiring and very motivating. I hope i can write a code as clean as yours someday 😁 I'm going to rewatch it again once i learned all the basics of javascript and learn more from this project 😊😊
This is exactly what I needed to get spun up on some JS as I'm trying to learn some web dev. I know some Java, C++/C and code in Python for work and the pacing here was perfect for someone who needed a quick rundown.
Thank you! You explain things, not JUST do them!!!😁 One of the biggest issues I have had with trying to program for years is how to visualize the way the looping structure works.
i'm learning a bit of javascript as an entry level begginer, this video is funa dn good to watch, only had some little problem with the nested arrays and for of loops, hoping that later on I can learn more. thank you this video was great
This is so freaking cool, Thank you so much sir! you light up my motivation to still keep grinding and learning throughout this tutorial i really enjoyed cloning this game that you build, i felt so much good and wanted to learn more
To whoever had trouble understanding the random number selector, here's a comprehensive explanation: Math.random() will give us a number between 0 to 1 here 0 is inclusive and 1 is exclusive what this means is the number could be 0, 0.1, 0.2, 0.3, ......, 0.99999 maxx so multiplying it by the length let's say it's 10 would give us a range from 0 to 9.9999 inclusive now the number could be 3.6 etc but the index is only a whole number so the Math.floor() function will effectively remove the decimal part or can be interpreted as shifting the number to the lowest whole number: 9.9 -> 9 3.3 -> 3 4 -> 4 0 -> 0 0.1 -> 0 0.999 -> 0 since indices start from 0 an array with 10 elements would have range 0 -> 9 and the random number expression would also have range 0 -> 9
im just trying to get into javascript and really enjoyed this form of content. Thanks for sharing. Kinda bummed that we didnt built the fancy animation? The intro at 00:55 kinda fooled me there haha. But nonetheless i got some valuable insight and learned alot!
Great video as always! One small note though, you used parseFloat instead of parseInt in the getNumberOfLines function altough a float shouldn't logically be a valid value for the number of lines
I have really enjoyed your content and learned a lot. If you have the time, I would love to see something more advanced in JS. Anyways, great job, as always. Keep it up!
Thanks Tim, could you please make it a complete . After the coding, what is next? How do we link image and actually put on the website or an app? In addition, can we report what the player is winning from? Like, the have 3 lines, and each line has a certain symbol and that was the reason the won, or not one. Basically to report each line symbol. And keep it in their play log.
Love watching your vids. I like that you you make small typos, syntax errors, math errors and correct as you go along. This is how coding is in real life, it's not perfect and we do make those little errors at times, for me anyway 🙂
As a zero year old fetus that resides in the stomach of my mother for a time being, I express my gratitude since this project helped me to be a bit more prepared for the life outside in the harsh economic conditions, since I would be able to write in my CV that my experience is equal to the numbers of the years of my life and thus have my chances to be hired a bit higher.
Thanks for the video. It helped me review some of the core concepts of Javascript and even learned a couple new things. I think I'm gonna try creating my own version of this in python and see where it goes from there
Thanks for all the free videos; you're appreciated 🙏 Only problem is, there's no way we can learn javascript from this. We can slow it down and follow what you are doing, but we aren't really learning. ...don't mean anything negative...just passing my opinion. Great work on your part always 👏
As a 146 year old Tibet monk that video really helped to get one step closer to a first functioning website for our monastery.
LOL
wtf 😅
Is this a joke?
@@Mehak-Fatima-Naqvi nah he is my friend I know him, I am his senior monk with 200 years of experiance
😅😂@@DawitSoftware
Tim - I am very impressed by your teaching technique. As a 58 year old database programmer, I learned a lot about JavaScript from your 16-part tutorial and this video really cemented the concepts you covered earlier. You have a bright future ahead of you! Keep plugging along.
I am a new JavaScript language learner and seeing a "real project" taught me a lot, even though it was challenging for me. Thanks to this video, I realized that I need to work harder. Thanks a lot for this great value!
Ngmi
ive been developing with javascript with more than 10 years of experience, yet I still enjoy these beginner tutorials and still learn alot.
Then u😃 noob
@@sajosunny3579 🤣🤣
@@sajosunny3579 😂😂😂😂
bruh what🤣
@@sajosunny3579 lol 😂😭
This was amazing! the perfect project i was looking for to understand JS. This was very well done Tim. Looking forward for more!
Awesome, thank you!
JavaScript functions are hoisted aren’t they? I call functions all the time before I define them.
@@ihatethewind Only if they are declared the old way with "function" keyword. If they are declared with the new ES6 way, the "arrow" => functions, they are not.
Arrow functions are not getting hoisted.
i just finished the project,it was helpful, i did many things my own way I find that the best way to learn, sometimes I see that your solution is better than mine so I change it sometimes I find that mine is better or easier to understand so I keep it, again this was very helpful I always like this project series keep them coming!
Bro i have error
Hi Tim
I have just finished this project in one go without stuck anywhere. You explained quite well.
Thank you for this project. I am going to use this on my portfolio.
I completed this video 4 whole weeks ago! Wow! I just came back today to rebuild it, with functional programming concepts, and man, I know my life has revolved around JavaScript for the last 4 weeks, but coming back to videos like these have really helped me understand how to properly use conditionals, and most of all, how to organize my builds with a functional programming mind frame. I separate the date from the functions, and I use map and join for the reels. I broke it up into a bunch of smaller functions with specific tasks.
I'm only 10 minutes in, but this is probably the best execution of this tutorial style I've ever seen.
You're right on time, Tim. I just wanna start learning JS
Thanks for this video
i love seeing your development not only in writing clean code but also improving in structuring your projects. lovin it keep it up nice video
Teleqram me 👆⬆️
you're a hell of an instructor Tim, I really appreciate your ability to break down the concepts clearly.
From the first few words I though you were giving a bad review
first 15 minutes and its validating how much I actually know how to code. so much new info too! thank you very much!
Great video, learning by practicing is so much better. Even if all you do is copying a few lines of code that you see in each lesson. Much more effective than just taking notes.
I know this because I tried everything and the only way I could learn (and retain what I learned) was when I started doing that.
Once a friend suggested me a few books with interactive content, that made me practice what I learned at each chapter.
Edit: For those asking about the books I mentioned, these are the best ones:
"Javascript In Less than 50 Pages"
"Head First Javascript Programming"
If you are into learning Python, "Smarter Way to Learn Python".
is it normal that you get stuck sometime and look at some code for reference?
@@myke6972 I'm just a hobby coder, but from what I've read from people that do it professionally the answer is yes. They lookup in docs and posts on places like stack exchange all the time. No need to re-invent the wheel when working.
@@not-a-lot-of-options Hey buddy can u explain why tim didn;t get error even though he re declared blocked variable const numberoflines
Bot account commenting on videos like this to promote those books
Hi, are you referring to the numberoflines = getnumberoflines()? @@Sahil-ev5pm
I think a lot of people are missing out from the real intention of this video. He is simply going though all the vanilla JavaScript topics any newbie or beginner should be familiar with in thier early stages of JavaScript development . Topics such as declaring and assigning variables, for loop or while loop, JavaScript functions arrow functions, debugging etc
He is simply trying to do what should normally take months to learn and master and try to make it as simple and perhaps encourage learning the fundamentals
I found the video extremely helpful and insightful, in so my opinion so many ways to kill a bird and surely this is one way to it
Well done Tim
Thanks Tim. I just finished all my HTML, CSS now Javascript and so far I've done 2 projects, it helps a lot to see how I can actually put my knowledge to good use rather than just mindlessly learn the language. I've been struggling to find this kind of videos. so thanks again for sharing hope to see more from you.
How you start it.. i am trying but i cannot. Can you give me some tips. So i will follow
I had to chatgpt where to start. Im adding event listeners and other elements to dynamically work with the slots. Going to make my own icons too.@@sanausman2931
For those who get an error saying that the module is missing even though it's there, try uninstalling node js then installing the current version instead of the lts. I got the error during the prompt sync section and this worked for me. Simply redownload the installer for the lts version then run it to uninstall it
Had the same problem thank you sir
ur wlcm
This tutorial is way better than others that just teach theory
thank you Tim, this was my first introduction to Javascript (coming from a Python background) and it was immensely helpful
This project was truly helpful! I just have a small suggestion regarding the code at 19:16. Instead of using (.numberOfLines > 3), it would be better to use (.numberOfLines > ROWS). Just to ensures that the code remains intact even when we alter the value of ROWS.
Hey buddy can u explain why tim didn;t get error even though he re declared blocked variable const numberoflines
@@Sahil-ev5pm if I am not mistaken, it's because the first number of lines was inside of a function, meaning it isn't global. unless it is a constant outside of the function, you are free to use it again.
bro, I'm so happy u doing Javascript u can see at this moment I write this comment only in 17 hours u got 10k views this means people more love JS so please do more projects and challenges on JS so thank u bro ill follow up until the end 🙂
Happily to find you. It means a lot for me. Also thank you for your understandable accent.
Tim, You're so fascinating teacher, and I love all your videos because they teach me a lot. You made me remember many things I have forgotten and that's insane, I mean, you made me see that, although have worked as a software engineer for many years, I still have many things to learn, and that made me ecstatic a little bit. So I would love to thank you for this exciting video. learning will never stop!😉😉😉
Great video!
Also, when asking for amount of lines to bet on we can do this:
const lines = prompt("Enter amount of lines to bet on (1-" + ROWS + "): ");
so it changes as we change number of rows in our slot machine
Why are the best youtube teachers named Tim? You and Tim Corey holding it down. Thanks for the video.
17:09
17:49 part 2 - get user's number of lines - & collect bet
21:06 part 3
30:31 pt 4
37:07 columns reels
37:06 i = 0 "LOOP
keeps track how many loops we need to perform (variables)
37:14 i < COLS "BE LOOPING PER COLUMN
i is less than # of columns - stop at the number of columns there is
37:27 i++ "JUST EXIT?
keep looping. And exit loop
*******************************************************************************************************************
37:58
38:34 const reelSymbols = [...symbols]; "generates 39:00
copies all symbols into another array.
random select symbol, add to reel
39:02 for (let j = 0; j < ROWS; j++) {
remove 'rest of symbols' from reels as we add the symbols into each'next?' reel/column
38:23 'code paragraph' above is all list available symbols "per reel/column"
45:46 const randomIndex = Math.floor(Math.random() * reelSymbols.length);
randomly picks one symbol that are available per row
40:38 random index
round down (Math.floor)
# x total available symbols (Math.random() * reelSymbols.length)
45:52 const selectedSymbol = reelSymbols[randomIndex];
inserts into reel
46:00 reels[i].push(selectedSymbol);
pushes in per variable, i
42:32 we selected reel/column i
45:04 reelSymbols.splice(randomIndex, 1);
remove from available symbol, to not use it again
************************************************************************************************************
for (let i = 0; i< ROWS; i++)
row. pushes all symbols into rows
49:11 rows.push([]);
pushes in new row - this array[] represents row
49:27 for (let j = 0; j< COLS; j++) {
loops every single column
50:00 rows[i].push(reels[j][i])
accessing row-i column-j
EACH ROW:
51:34 const printRows = (rows) => {
prints all rows in code
51:47 for (const row of rows) {
loops through all rows
52:03 let rowString = "";
prints row
53:11 +=
adds elements into string
53:43 if (i != row.length - 1) {
rowString += " | ";
does not add pipe to last symbol, accept for all other row
const rows = [];
for (let i = 0; i< ROWS; i++)
row. pushes all symbols into rows
49:11 rows.push([]);
pushes in new row - this array[] represents row
49:27 for (let j = 0; j< COLS; j++) {
loops every single column
50:00 rows[i].push(reels[j][i])
accessing row-i column-j
Thanks Tim I've been waiting for you to upload a walkthrough project in JavaScript!
Would it be possible to upload a video containing simple to more difficult projects purely in JS, similar to what you've done with python? I've yet to find someone who's able to articulate and teach the way you do!
Teleqram me👆⬆️
Thanks
Tim is a man now who remembers when he was in high school.
Back then i was at the end of middle school. Now I'm in 3rd year of college
Dude you are genius. Your way of teaching is absolutely amazing and most importantly, your way of writing codes is so clean and well organized.
Thanks for this tutorial.❤❤
Great video. it was tough to understand some concepts at first while following along. At the end it was all wrapped up and made sense! It was a great insight into your thought process and how you break everything into components.
Something to note at 20:30 - the order matter for const functions. If you use the function keyword, they are 'hoisted' to the top and can be placed in any order.
For example, the following would work because it is using the function keyword:
const numLines = promptNumLines();
function promptNumLines() {
const minLines = 1;
const maxLines = 3;
while (true) {
const lineAmount = prompt("Enter a line amount (" + minLines + "-" + maxLines + "): ");
const numLineAmount = parseFloat(lineAmount);
if (isNaN(numLineAmount) || numLineAmount < minLines || numLineAmount > maxLines) {
console.log("Invalid line amount. Please try again.");
promptNumLines();
}
else return numLineAmount;
}
}
Great project Tim!
I will take advantage of this to sharp my javascript skills.
Little tip here, you forgot to increment the balance after the user won some prize playing.
Teleqram me 👆⬆️
what an amazing video, it shows us how u think how u structure you code and everything.
Really perfect to learn javascript.
let's go! a TechwithTim video on JavaScript? yeah baby!
whoo 4 months later and still haven't gone through it lol
thank you for doing this course, i'm a beginner of javascript and this is very helpful for me !
Thank you so much for this tutorial! i found it really helpful as a viewer to watch your thought process live. i think learning to break down projects and think like a programmer can be one of the biggest challenges and your video helps solve that!
OMG you are the most enjoyable and amazing tutor there is, what a fantastic way of teaching, teaching from what return does to making a whole project. You are the best on the whole youtube
Indeed a great tutorial. You explained things throughout the way - such lectures are very hard to find here on RUclips.
I watched this 4 months ago, and I had no idea what this man was saying but now I find myself auto-completing his explanations lol.. I think I have made some progress.
first of all Thank you SOOO much Tim
and also, at 16:48, we could have directly called the deposit function again in the for statement instead of writing the while statement
edit: Im facing an error if i do this,
if I enter a positive number, it works fine but if i enter any string/negative number (as mentioned in the if stmt), it returns "undefined"
(first time "properly" learning js ty!)
Teleqram me 👆⬆️
broooooooo same thing i am thinking did you figure out whyy ??????????
@@zaheerimad5844 not yet
Do you have a video where you add the html/css etc. to complete the gambling game? I thought you'd maybe do that was well, but it makes sense if that's out of javascript function
This is a amazing video to get started with javascript. And I can relate you totally for python syntax as I am also working with python (I have learned that from your videos). Good job, please adding these kind of content. Thanks
perfect video I was looking for. youre amazing at teaching
I agree. You are a very good instructor. Thank you. I couldn't get prompt sync to work for me. I switched to readline and that is working so far.
Awesome stuff man. Really appreciate what you did. I like the delivery and entire explanation of what goes after what, which is truly important to understand if you taking it first time. Hope there was an html integration with it as well. But overall it looks fine. Thank you.
Thanks for putting the disclaimer at the front.
Teleqram me 👆⬆️
Ur welcome
+1. Gosh I fcking hate adds.
Am learning the workflow of programming in js, this project has given me a good basic stracture of what i should expect and do, I enjoyed this project and liked the results. Keep them coming. Thanks
Bro, I LOVA YA! ❤
At the age of 48 (!), just started with your Python vid. Love it!
This is such pythonic way of writing JS, love it bro XD
I really liked this. Would love to see more. Consider having a simple visual done on PPT or an image editor for when you are trying to explain what the code is doing.
Yep this is what would 100% imrpove this further for people who are visual learners. I had to draw it out myself in paint to get how the for loops were working haha.
I've started learning javascript this week and saw your video while taking a break and it's inspiring and very motivating. I hope i can write a code as clean as yours someday 😁 I'm going to rewatch it again once i learned all the basics of javascript and learn more from this project 😊😊
This is exactly what I needed to get spun up on some JS as I'm trying to learn some web dev. I know some Java, C++/C and code in Python for work and the pacing here was perfect for someone who needed a quick rundown.
me too! exactly me, I have worked in C/C++, C# .net and java, and I am comfortable in web, but I need strength in this arena
Thank you! You explain things, not JUST do them!!!😁 One of the biggest issues I have had with trying to program for years is how to visualize the way the looping structure works.
I didn't know you could use node to get a regular terminal response to js like python in a regular terminal. This is very useful! Thanks.
As a 88 year old programmar, your videos helped me alot to ace Javascript
As a 99 old grandpa… I forgot what I was going to say
hi bro how u doin, i loved the project, the way u explain is so good. Thank God there is someon who understands The beginners.
I have learned so much from you. You do such a great job!! Thank You!!
i'm learning a bit of javascript as an entry level begginer, this video is funa dn good to watch, only had some little problem with the nested arrays and for of loops, hoping that later on I can learn more.
thank you this video was great
Man this just cemented my javascript learning... pushed me up a some notches. :)
This is so freaking cool, Thank you so much sir! you light up my motivation to still keep grinding and learning throughout this tutorial i really enjoyed cloning this game that you build, i felt so much good and wanted to learn more
To whoever had trouble understanding the random number selector, here's a comprehensive explanation:
Math.random() will give us a number between 0 to 1
here 0 is inclusive and 1 is exclusive
what this means is the number could be 0, 0.1, 0.2, 0.3, ......, 0.99999 maxx
so multiplying it by the length let's say it's 10
would give us a range from 0 to 9.9999 inclusive
now the number could be 3.6 etc but the index is only a whole number
so the Math.floor() function will effectively remove the decimal part or can be interpreted as shifting the number to the lowest whole number:
9.9 -> 9
3.3 -> 3
4 -> 4
0 -> 0
0.1 -> 0
0.999 -> 0
since indices start from 0
an array with 10 elements would have range 0 -> 9
and the random number expression would also have range 0 -> 9
Great content! Thanks for sharing Tim!
Np!
im just trying to get into javascript and really enjoyed this form of content. Thanks for sharing. Kinda bummed that we didnt built the fancy animation? The intro at 00:55 kinda fooled me there haha. But nonetheless i got some valuable insight and learned alot!
as a guy who is shifting from python to javascript, this video is a gem
Hi Tim, thank you for this tutorial. 👏Is there a possibility that you can make a tutorial on how to build a project from start to finish with Angular?
Great video as always! One small note though, you used parseFloat instead of parseInt in the getNumberOfLines function altough a float shouldn't logically be a valid value for the number of lines
Teleqram me 👆⬆️
perfect video to start project in javascript
I really enjoyed completing this project, it gave me a good understanding of using Javascript. Thanks!
Really love this video as a beginner I you have me how to use function inside a function. Thank you man🤝
I have really enjoyed your content and learned a lot. If you have the time, I would love to see something more advanced in JS. Anyways, great job, as always. Keep it up!
what a thought process 😎, lot to learn from you.
Thanks Tim, could you please make it a complete . After the coding, what is next? How do we link image and actually put on the website or an app? In addition, can we report what the player is winning from? Like, the have 3 lines, and each line has a certain symbol and that was the reason the won, or not one. Basically to report each line symbol. And keep it in their play log.
thats the neat part, you gotta watch how to make a webpage, link the js file to it, and maybe convert it visually :)
learn html and css to make it come alive.
This
JavaScript is a perfect course. Thanks
thank you Tim , this was a great project ,I am learning JS with you
You gave me second idea today, God did in the morning and now You did. Thank You.
Love watching your vids.
I like that you you make small typos, syntax errors, math errors and correct as you go along. This is how coding is in real life, it's not perfect and we do make those little errors at times, for me anyway 🙂
This is such an interesting video and it helped me understand more concepts I used to struggle with, thank you Tim! 😁
Thanks for this, I really want to learn JavaScript and this indeed helped.
As a zero year old fetus that resides in the stomach of my mother for a time being, I express my gratitude since this project helped me to be a bit more prepared for the life outside in the harsh economic conditions, since I would be able to write in my CV that my experience is equal to the numbers of the years of my life and thus have my chances to be hired a bit higher.
Это требует определенных знаний и опыта. Спасибо, что поделились очередной рабочей связкой👍
I love this video, hope you upload more videos javascript projects, thank you
Tim thanks for this wonderful video. I learnt so much
Thanks for the video. It helped me review some of the core concepts of Javascript and even learned a couple new things. I think I'm gonna try creating my own version of this in python and see where it goes from there
Teleqram me 👆⬆️
Thanks for your contribute. Wishing you good health!
Thank you for sharing this Tim dude.
Tim can you make a video that uses the html & Css for the animations as well as this javascript code
if this is a turorial for beginners, i am Santa-claus. Never the less, great content.
bro this is for beginner also
Dude, That's Fantabulous
Already over thought this and now i've introduced 3d models of reels and using WebGL. Might as well bring in sound too.
Teleqram me 👆⬆️
Great Job!. Looking forward on upcoming project building videos.
I admire the way you explain thank you a lot hope to see you in Barcelona
realy enjoyed the project, thank you from germany! :)
Teleqram me 👆⬆️
10:09 excellently explained sir thank you
Thanks for all the free videos; you're appreciated 🙏
Only problem is, there's no way we can learn javascript from this. We can slow it down and follow what you are doing, but we aren't really learning.
...don't mean anything negative...just passing my opinion.
Great work on your part always 👏
i agree
i think the idea behind this video is just to figure out the syntax differences between the language you know and JS
Thanks for such a great tutorial I think the way you teach is much more better understanding than others. Please make such tutorials for us😊❤
thankyou sir , we want more videos like this
Great tutorial. Thanks for sharing
Loved the new intro!!
very creative solution. I want like this projects more.