Timestamps - ForEach() - 3:25 - 5:30 Filter() - 5:30 - 15:30 (8:55 One liner filter code) (filter will returns an array - meaning you do not need a separate variable for an array) Map() - 15:45 - 21:05 (20:30 You can link multiple Map() like .then() from promises) Sort() - 21:10 - 25:50 (Takes two params) Reduce() - 25:50 - 30:55 (Reduces the array to a single value - from LEFT to RIGHT) Extra : 31:05 - 33:40 (Combine all four methods)
@curiosdevcookie5 жыл бұрын
Thank you,
@JD-kf2ki4 жыл бұрын
thanks, dude
@simple88103 жыл бұрын
@afreen khanum Nah, forEach loop over an array, and it only gives us values when we defined specific conditions for that, e.g ages.forEach(function(age) { if(age>30){ console.log(age) } }); so it only gives value which pass the condition but in filter ,it will make array of these values which pass the conition and for each doesnot return anything while filter return a new array depend on the condition
@Dejan-f6m2 жыл бұрын
Appreciate it
@OmarBugarin6 жыл бұрын
I just recieve my first pay working like a front-end dev, and i buy your course, becouse i need to be better with js and becouse thanks to you i got my job, thanks man youre the best teacher, if one day you come to México, youre welcome in my house!
@caioferreira33085 жыл бұрын
Really, nice man congrats, i wanna a job as a full stack and i will get by brad classes
@nrg76855 жыл бұрын
@stillFLiP i just wanted to ask the same. Because in my country we have requirements like 5years work as a developer. Thats insane
@PB72UK5 жыл бұрын
Tamás Mirják just build loads of stuff, even small spas and single webpages that show you understand a certain concept, this will help your job prospects..
@raboija5 жыл бұрын
that's nice
@unknownman15 жыл бұрын
what is your salary ?
@HariramNandagopal6 жыл бұрын
RIght now I have reached a level where searching for a video within "Traversy Media" channel seems to be more bliss than searching whole KZbin. Top class Brad :)
@TraversyMedia6 жыл бұрын
Thanks :)
@Nemcoification6 жыл бұрын
Lol, same here. My preferred google search on a topic is now "Traversy (topic)". That says a lot :)
@ChristofferHald5 жыл бұрын
@@Nemcoification Funny to read this comment. I have done exactly this the last two weeks.
@devonrusinek58075 жыл бұрын
@@Nemcoification Same here
@curiosdevcookie5 жыл бұрын
Well put, same here!
@troytempest30232 жыл бұрын
Brad, honestly speaking you're by far the best source of not only quality and useful programming info but your explanations and comprehension of these concepts and their application is really great and very easy to understand. Thanks for the amazing content!
@boristheblad2 жыл бұрын
Those "Now put it on pause and try to do it yourself" are gems in your videos man, really helps to learn!
@ousmanebocoum2216 жыл бұрын
Actually understanding those basics should be what people focus on, instead of learning frameWorks and libraries without knowing what is going on under the hood..once again thanks, Brad!!!
@TraversyMedia6 жыл бұрын
agreed
@ubozoharinze88693 жыл бұрын
I am being forced to learn angular in my new company but a friend told me to move to basic ts and js which i can say is really helping me out blindly learn frameworks is bad
@zachaluza34105 жыл бұрын
I've been struggling with these functions for a while, and this video really helped!
@thevoiceofgod74545 жыл бұрын
Thanks For the great tutorials, they are so helpful, I had my first developer job interview, needless to say, I don't think I'll get the job, but what I have learned through practice and watching your tutorials was tremendously helpful during the interview process. First code test I passed easily, second code test was much more difficult and I couldn't figure out the code but I was able to figure out parts of it. Seriously thanks for the tutorials. For those of you out there just starting out, looking for your first developer jobs, the JS test I was given consisted of an easy first test, basically just asking basic questions about identifying operators, for loops, switch statements, what are objects stuff like that. The second test was to write a function where I had to figure out how to find words in a given sentence/string that contain a specific character and output those words that start with that character and then reverse the words. Didn't do so well on the second test.
@kissromeorichard3 жыл бұрын
Brad, your way of explaining abstract things like functions suits well to many, many future programmers. A humble thank you! PS. And also your voice and tone is really soothing for people who want to learn.
@daviddrahllensa41654 жыл бұрын
My native language it´s spanish, and i understood better than people that explains on spanish. Thank you so much, great teaching.
@davidvideauortega2876 жыл бұрын
Your tutorials are out of this world. You explain every single thing, what makes them really easy to follow and begginer-friendly. I can't thank you enough for that! I'm a huuuuuge fan of your work :)
@BobbyBundlez4 жыл бұрын
omfg ur explanation of how if only one parameter is in fuction then it doesnt need paranthesis cleared up SO much for me, thank u
@ITSH4WK6 жыл бұрын
Great examples. I love how you break things down and then show simpler ways of getting the same results. Really helpful. Thanks, Brad
@kevinzhang89746 жыл бұрын
get up @ 6:00 and did this tutorial ... it is a fantastic exercise to massage my brain before I jump into real JS coding today... Thank Brad for the excellent video
@EricBishard6 жыл бұрын
Really good video. I'm a 10 year JS dev and work with JS everyday and courses like this are required to simply stay sharp! Nice job..
@sarahrudy82923 жыл бұрын
You are SUCH a great teacher! I found you through your course Modern JavaScript from the Beginning and these youtube videos are just the icing on the cake. Thanks so much for spreading your knowledge!
@ajaybayya6 жыл бұрын
Thank you Traversey, your content inspires a lot to make my day to day work better.
@jacquelinemendez3962 Жыл бұрын
Thank you for this video. I'm doing 100devs right now and this really helps reinforce my reading homework.
@othmane24935 жыл бұрын
I really don't get how can ppl dislike a video of a guy who gives them some knowledge for free ... like how ??
@f127363 жыл бұрын
Maybe by clicking on the dislike button. 🤔🤔
@MrAlamazin6 жыл бұрын
As a self-learning student of JavaScript, I am grateful for your content. Your explanations are clear and your voice is sooo calming! LOL. Thank you fine sir!
@LaurenceBahiirwa5 жыл бұрын
Thanks Brad for this. I was preparing a lesson for my Cambridge students. This helped greatly. Keep it going man.
@davlatgulomxusenov20314 жыл бұрын
are you a teacher of Cambridge University?
@deependrarathore2833 жыл бұрын
I am newbie and learning coding . I have questions here , we are passing company as parameter but company is not defined anywhere ?
@vainav57943 жыл бұрын
@@deependrarathore283 if you talking about the 10:10 time stamp here company is just a parameter just like passing paramters like x,y in a function this is possible in javascript unlike lang like c++ and etc here the values from the companies array is stored in company variable as it loops through all the object ppresent in the companies array i think this is the coorect explanation corect me if iam wrong
@aroshm16822 жыл бұрын
Thanks man!! this was super helpful. I always come back to watch this when I'm having doubts.
@AlexandrKalaidzhi6 жыл бұрын
ES5 callback syntax for filter function can be shorter without using if statement: const canDrink = ages.filter(function (age) { return age >= 21; }); The result will be the same. But ES6 is really cool. Thank you for the great lesson.
@tunamusic23144 жыл бұрын
ok
@leomosia Жыл бұрын
Thank you Brad. I appreciate your courteousness in apologizing for the activity in the background.
@TheFallinforyou6 жыл бұрын
For an even shorter way of sorting the Company starts: const sortedCompanies = companies.sort((a,b) => a.start - b.start);
@awaisfiaz81866 жыл бұрын
yeah right explanation link. www.w3schools.com/jsref/jsref_sort.asp
do you know why when we use sort(a,b) => a-b and it will arrange from short to hight value ??
@MP-mh1tu3 жыл бұрын
This is the only clearly explained video I've seen about this function. Thank you.
@websurfer58456 жыл бұрын
Man, thats one of the best videos. make some other javascript videos , its one of the most famous languages out there. So please share with us the most important things u've learn doing javascript throughout your entire programming life
@peoray6 жыл бұрын
Have you tried the course?
@peoray6 жыл бұрын
How would you rate the course?
@AoifeNic_an_t-Saoir6 жыл бұрын
Shatov his courses are all great, especially the ones on Javascript. He not only knows what he's talking about, but he also knows how to teach it in a way that we can understand.
@baybay12346 жыл бұрын
yeah check out his courses on Udemy if you'd like to show some support to his great content :)
@konstantinkkk83976 жыл бұрын
Web Surfer pls tell me how to find his tutorials on udemy
@indiancuriousvoice87732 жыл бұрын
I am from India and I can say your teaching way is better than our IIT teacher.
@ScottGrovesBrainDump6 жыл бұрын
Brad, just love this video!!! Really great examples and soooooo well explained. Really like you testing us by asking us to pause and try ourselves. Makes it so interactive. Thumbs up!!!
@oliverharan52566 жыл бұрын
so the only reason I would recommend this or anything that Travis does because he's the real deal... He records these videos and does paid udemy courses at the same time.... That's big time... his courses are well worth the subscription but he goes above and beyond with these vids for us.. it's all about knowledge. .. So rare.
@willadams62176 жыл бұрын
Really good video I followed along and added it into my modern Javascript course directory. One thing though you keep saying squared but the Math .sqrt() is the square root not squared.
@011073454 жыл бұрын
squar't
@matthewmcmorries76002 жыл бұрын
Software student and first time watcher here. You did a phenomenal job of breaking this down so a week 4 student like myself could understand.
@MrSuperawesomeisme5 жыл бұрын
Very well explained! Thank you. You must have accidentally mixed up square vs square root though!
@brondchux2 жыл бұрын
4 years later - Thank you Brad for the refresher!
@CaneSugarHD5 жыл бұрын
The for loop you can easily do away with "i" or array tags completely by using (for of) loops for(age of ages){ if(age >= 21){ canDrink.push(age) } }
@childmolester65574 жыл бұрын
stfu or i ll give u 3piece and a java
@tunamusic23144 жыл бұрын
i see ( for ...in ) , means for (age in ages) and don't see (for of ) like you said
@lets_lvl_up4 жыл бұрын
I mean, it's better than the old fashioned 4 loop. Actually you can even get ride of the curly brackets: let canDrink = []; for (age of ages) if (age >= 21) canDrink.push(age); But doing it the way it's shown in the video is still more succinct: let canDrink = ages.filter(age => age >= 21);
@karimakatonkarinakaton96084 жыл бұрын
0
@ranveerancharaz6732 Жыл бұрын
This is one of the few videos that helped me understand reactjs well ! Thank you for that !
@argeelearner39786 жыл бұрын
On your way to 300,000K, Good for you. Your the best!
@reilley42974 жыл бұрын
To sort the companies in order of start date: const sortedCompanies = companies.sort((c1, c2) => c1.start > c2.start) You can do the same thing on ages sorting as well. Great video! I learned a ton!
@ernestj80003 жыл бұрын
Excellent tutorial and pacing. Thanks for recording this. Truly one of the best explanations of these array methods that I have watched.
@sumgue49646 жыл бұрын
This was really the only acceptable tutorial on javascript arrays on youtube. I was falling behind in a programming bootcamp I am currently attending and this saved the day. Thanks a lot!
@golamrabbiazad5 жыл бұрын
Thank you so much. Your explanation was amazing. lovely!
@fastsolution4 жыл бұрын
This guy is absolutely not boring and voice is soothing.
@pikachu52236 жыл бұрын
Thank you! buy brad js udemy course is gold
@achivers86 жыл бұрын
Kali 33 hi, is it the modern JavaScript one or any other js course
@pikachu52236 жыл бұрын
Abdul Gafoor the modern one
@LifeSurf1232 жыл бұрын
This really takes some intimidating looking concepts and explains them simply, thanks
@captainalpha48536 жыл бұрын
Hi Man , please keep doing tutorials videos , i love 'em a lot 😍😍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍
@AnaCastro-zp5cr6 жыл бұрын
This video is hands down the best one I found explaining high order functions & arrays. You basically thought me in 35 min what 5 hours of Lynda courses couldn't. Thanks, u da man!
@FrancoBaccarini6 жыл бұрын
Hi! Love your content and style. Can't afford to become a Patreon right now, but someday i will. The only way i have to pay your content right now, is with three suggestions for VSCODE :) 1) Instead of copy paste a line, you can ALT+SHIFT+DOWNARROW (or UPARROW). You can do it without selection if you need a single line, or select all the lines you want (SHIFT + UP/DOWN or MOUSE selection.) :) 2) If you need to move the line, just press ALT+DOWNARROW/UPARROW. 3) emmet is enabled by default. Writing CLG->TAB it's equal to console.log(yourcursorisherenow)
@miggu5 жыл бұрын
Thank you for explaining things calmly , orderly and easy to understand.... so hard to find to find people with this talent .
@coolarun31506 жыл бұрын
Liked even before read the title
@dimarzio93746 жыл бұрын
cool arun Bias. Evaluate the content first. Make the author be better.
@coolarun31506 жыл бұрын
Dimit Lemekh don't worry man. That like is for his effort not for the quality of the content. i hope people like you will give good comments about the content and make him better.
@alxndrdg86 жыл бұрын
looks like you are new here. Those who know Brad, hit the like button first and then watch the video - That's Brad Traversy! He has earned that much respect from us.
@MRMOTOFOTO6 жыл бұрын
"MAKE THE AUTHOR BETTER".....Bwhahaha!!!!
@RobertTodar6 жыл бұрын
I liked it before I watched it as well :) Now watching it, I wish I could like it again :). Thanks for the great video!
@bonnieowens95316 жыл бұрын
Heading over to Udemy to buy the course now...I watched this to clarify some problems I was working on in another course. This answered EVRYTHING, and made me understand what I thought I knew even better.
@nyteskun4 жыл бұрын
can some explain how sort algorithm works? is it by a - b, then a - c? or a -b, then c - d? i dont want to just remember how function works without understanding the underlaying operation behind it. its bugging me.
@RickBeacham4 жыл бұрын
developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort If compareFunction(a, b) returns less than 0, sort a to an index lower than b (i.e. a comes first). If compareFunction(a, b) returns 0, leave a and b unchanged with respect to each other, but sorted with respect to all different elements. Note: the ECMAscript standard does not guarantee this behavior, thus, not all browsers (e.g. Mozilla versions dating back to at least 2003) respect this. If compareFunction(a, b) returns greater than 0, sort b to an index lower than a (i.e. b comes first). compareFunction(a, b) must always return the same value when given a specific pair of elements a and b as its two arguments. If inconsistent results are returned, then the sort order is undefined.
@ssk76903 жыл бұрын
Man you've got no idea how much you help a person in need. God bless you!
@uwspstar20086 жыл бұрын
thanks for sharing this one!
@Hi-Five-Ghost3 жыл бұрын
Brad is the GOAT 🐐 . I’m taking an online bootcamp and they totally skipped over the ES5 and prior. Which makes sense as to how it works. They just dove straight into ES6 which doesn’t make sense unless you know the older syntax, for me anyway. I love you brad!!!
@GmoneyMozart6 жыл бұрын
1 dislike from a diehard for loop fan.
@TraversyMedia6 жыл бұрын
haha. I have 2 people that dislike EVERY video I put out right around the same time. It could be a video showing how to cure cancer with Angular and those 2 dislikes will be there before 2k views. It's like clockwork..
@makasilelo12266 жыл бұрын
Sorry, did you read my comment on your last post on GO? If not, I think you have to. It's about piracy
@TraversyMedia6 жыл бұрын
Can you email me? traversymedia@gmail.com
@cowboy80386 жыл бұрын
I sent him an email in case you haven't yet, good catch, that is seriously bullshit.
@makasilelo12266 жыл бұрын
Thanks
@sammorpeth53675 жыл бұрын
This is such a great video for people like myself who feel like they've plateaued recently. I finally feel like I'm starting to get a grip on arrow functions thanks to this. Cheers!
@m.h.99276 жыл бұрын
Boom ! Boom ! i yet not started watching ,, but know You are a Bless for Poorer People ,,, sorry , i have to go to watch .
@rubenverster250 Жыл бұрын
Hey Brad. I've been watching you since the start of my career, when I was a Junior. The time has come where I have outgrown your content. I appreciate all the help and tutorials you've given me over the years. Now you are helping me in explaining these topics to other Juniors :) Thank you
@rayc31035 жыл бұрын
Can anyone explain to me why the sort returns 1, else -1? How would that result in the companies being sorted?
If you look back a very long way, I believe it is coming from Assembly language, where you do a COMPARE command, and there are three possible results, basically -1, 0 and 1, so you JUMP LESS THAN, JUMP EQUAL TO or JUMP GREATER THAN... We are only using two here, because the two values must be swapped in one case, and not in the other, while if they are equal, it doesn't matter if they are swapped or not.
@SlimTrackStar4 жыл бұрын
here we are in 2020 and this makes so much sense. I needed this to understand the .map method, but revisiting the other methods definitely helped everything mesh beautifully. this was absolutely necessary. I can appreciate how concise this was with very simple and consistent examples. thank you. i definitely liked and subscribed.
@gafroninja6 жыл бұрын
"Sorry for the yelling upstairs". Actually thought it was my baby waking up, upstairs lol >
@littlealienclub34712 жыл бұрын
This video really helped it click for me. I’m using it in conjunction with the eloquent JavaScript book which at times is amazing and at times brain-frying. I feel I have a much better grasp on these array methods after watching this. Will definitely be buying the udemy course
@bagaskara15675 жыл бұрын
Arrow function is less readable, need more time to understand it
@JustSujC4 жыл бұрын
Definitely, but it is technically more concise.
@eddev4 жыл бұрын
Personally I read it just the same, I use em enough it’s just as easy understandable
@dazelmann65894 жыл бұрын
Or need more practice to get head around. Get on to work...
@lets_lvl_up4 жыл бұрын
Yeah at first it's kinda wierd, but now i think they actually make it more readable by getting rid of the clutter. Hope i don't get bashed for saying this, but they remind my of the pathonic ways xD.
@stevenedwards92624 жыл бұрын
Its a lot more readable, you dont have to declare that the callback is a function, you dont need pointless parentheses around singular parameters/args, and for single-line functions you dont need to specify youre returning something when its already obvious you are. You just need to spend an afternoon sitting down and breaking the pieces down in your head
@lfrommtl4 жыл бұрын
thank you so much! im doing a bootcamp and got tripped up on this. pretty sure they explained it exactly like you did but the pacing was too fast for me to grasp the concepts. this really really helped. thanks again!
@ahmedraza53406 жыл бұрын
Watching from pakistan
@kantyDarius6 жыл бұрын
From Argentina here
@hamadyahmed53796 жыл бұрын
From Mauritania here
@gulbadsha6 жыл бұрын
Programming has no boundries :)
@awaisfiaz81866 жыл бұрын
programming is same no matter where you are so get over it lol :D
@khoanguyen30446 жыл бұрын
Vietnam here
@aliakeel11 ай бұрын
thanks so much! i like how you used for loops to explain what all the methods really do.
@Steve_3605 жыл бұрын
you said lets find ages squared but used square root function, haha
@ninopotskhoraia53732 жыл бұрын
I never hear any banging or yelling which you are apologizing for in your videos. You have nothing to apologize for sir. Your content and teaching style is unmatched with. You have taught me so much. Thank you for your awesome videos.
@petixclancoc2256 жыл бұрын
square != Math.sqrt lol 🤣🤣🤣
@greencopycat5 жыл бұрын
Math.pow
@anythingtech5711 Жыл бұрын
Brad, Thank You So Much! 🙏 Through your explanation and walkthrough, I was finally able to understand the structure, what it does, the return, and how to console log-it. I was also able to get it through JS to an innerHTML. This type of video is perfect for beginners like me, I am sure, I'm not the only one! 🙏
@djotigergaming18386 жыл бұрын
nice explanation but you forget to mention that some of those methods are not supported in older browsers , you say its gonna make you look better programmer , that's wrong , whats true is : "its gonna make you look that guy who don't know how to support all customers platforms". spsly when you mention arrow functions -cause the basic support for arrow functions start in : chrome 45+ , firefox 22+ , opera 32+ ,safari 10+ , android webview 45+ , internet explorer : "not yet" ! - Trailing comma in parameters in functions arrow support start in : chrome 58+ , firefox 52+ ,opera 45+ ,android webview 58+
@kanonbolt1006 жыл бұрын
If you're supporting older browsers right off the top of your head instead of using tools like babel that compile your ES6 and above. I guarantee you, you're not getting as much done as you think you are.
@perc-ai6 жыл бұрын
you need to use babel, es6 is industry standard now
@ihusiexpress49384 жыл бұрын
this worked as well : const finTech = companies.filter((comp) => comp.category.match("Fintech")); console.log(finTech); top Brad
@discovertheworld124442 жыл бұрын
Thanks a lot for the clear explanation of the High Order Functions... surely a great help.
@Fahdie5 жыл бұрын
Half way through your video and your tutorial is absolutely magical. THANK YOU!
@wudao882 жыл бұрын
Incredibly clear explanation. Thank you.
@Marder19892 жыл бұрын
one of the best tutorials i have seen for programming so far, very nice job
@rayna4632 жыл бұрын
wow this is all starting to click in my brain!! Not too long ago i was convinced it would never make sense to me but i can feel the lightbulbs starting to go off :) thank you for the vids
@ivansmrcek2914 жыл бұрын
Amazingly encapsulated solutions into single-liner definitions of power! Great job Brad!
@aleejunaid6 жыл бұрын
I have a very complex JSON object and I can already see how much help these functions can offer.
@edhead764 жыл бұрын
Your lessons are so straight forward. Thank you for not overcomplicating simple concepts. I don't know why array functions keep messing with my head but this helps SOOO MUCH!
@makidelidaki92625 жыл бұрын
I love you. I've read tutorials about higher-order functions before and never got them. Thanks so much for this. That will be a boon for my exercises on edabit. Can't believe I finally understand map,filter,sort,reduce and what they're used for + how. So helpful
@muhsinkhalif36215 жыл бұрын
Thank you for making it look so simple! God Bless you for this wonderful tutorial!
@samrey81344 жыл бұрын
How can you not Love this Guy.... Thank you. Dude.
@kopilkaiser89912 жыл бұрын
I understood the topic of Higher Order Functions because of you. Thank you brother for putting the effort in explaining, thus give insights and passing your exceptional knowledge to the public. My support is for you
@AyiFahmi4604 жыл бұрын
Just following this course, once again thankyou so much mr Brad for all your effort.
@matt.mattox35183 жыл бұрын
Thanks for this video. It's crazy how much this helped compared to some online sources that I am paying for.
@dark9y83 жыл бұрын
I'm done with .filter method, and I know completely understand it. Will check others now. :) Thanks so much Brad!
@codito73886 жыл бұрын
What i like most is that you show and the old way!
@Algebrodadio6 жыл бұрын
This video was so good, I shared it with some of my co-workers who are trying to learn javascript.
@ahmedehab67503 жыл бұрын
You are a lifesaver, I'm currently learning and I had so much confusion about this topic and your explanation made it crystal clear
@sm3dev3 жыл бұрын
This helped me so much! Specifically, I needed to use filter() but couldn’t get it right. I was stumped in an app I’m building for school. Thanks for making these so easy to understand! Seriously
@jasonwelsh4176 жыл бұрын
I love your channel. Thank you so much for all the great content. I bought your JavaScript course and I can't wait to go through it for a refresher on some things as well as new learning!
@fredhair4 жыл бұрын
I'm coming from a C++ background now learning full stack as I'd like to get a job in it and wow you guys using JS don't know you're born! After writing a multiplatform openGL and C++ renderer and trying to set up environments and build systems I don't ever want to hear any web developer complain their job is difficult! C++ is becoming better nowadays but still.. JS is so nice and clean and easy to use even writing predicates for these array algorithms seem way easier lol.
@annalizziemarino Жыл бұрын
This tutorial is great. I've learned so much from everything I've watched of yours. Thank you so much!
@scottvarieur8905 жыл бұрын
This has got to be the best video explaining higher level JS functions. There are so many potential pitfalls when you learn this stuff, but you covered just about everything in an extremely concise way.
@onepiec35 жыл бұрын
this is amazing. you make it so much more easy to understand than a lot of websites I've checked them out on. I love how you're always so clear and concise with your words and you've helped me grow a lot with webdev. thanks!!
@brunoqgalvao15 жыл бұрын
Brad, congratulations on your videos, it has been helping me a lot these past few months. What you are doing here has immense value and i hope you are getting the reward for it. Trying to do my part, i have just become a patron. It's not much but hopefully soon i'll be able to give out more. Thank you very much.
@harshgupta26994 жыл бұрын
Hands down! Great explanation. All the concepts relating to higher order functions are now absolutely clear! Thanks to you!
@gehanadel36162 жыл бұрын
this video is fantastic I learn so much from watching this video, appreciate your effort
@alifhasanshahOfficial3 жыл бұрын
Finally I understand those method. Thanks a lot Brad ..