Create a simple calculator using HTML, CSS, JavaScript
Вставка
- Опубліковано 16 вер 2024
- Let's create a cool calculator with HTML, CSS, JavaScript. This project is aimed to help beginners, who just started their javascript / frontend developer journey.
Please leave feedback in the comments, so I can improve my content to help you guys out more.
Starting project: github.com/jav...
Final project: github.com/jav...
Where you can find me?
🔗 Links:
* 🍺 Support free education and buy me a beer: ko-fi.com/adam...
* 💬 Discord: / discord
* 📧 Newsletter: www.getrevue.c...
* ✍️ Blog: dev.to/javascr...
* 🐦 Twitter: / dev_adamnagy
* 📷 Instagram: / javascriptacademy
New web development tutorial from me: Memory card game using Javascript, HTML, and CSS: 🔥
ua-cam.com/video/xWdkt6KSirw/v-deo.html
I love this
It's a shame that no one watches your videos
I can't believe how easy this was! You're a really good teacher.
Lol mee too 😅lol but I'll look for a way to counter that Eval expression
Its always easy copying someone else code, try building it yourself 😂
Thank you so much for this tutorial! it was simple and very practicle im new to javascript and css and html and this was a great video for me to learn! keep it up!
Really great tutorial. Thank you very much. I've just fiinished js course and wanted to practice by making so calculator but all the videos on ytb are so overwhelming. Thankfully I found your video and in one hour ish I finished this project. Now I'm confident to make one calculator by my own
If you want to make the eval part a bit safer, you can add a Regex at the end like this
output.innerText = eval(output.innerText.replace(/[^-+/*\d]/g, ''));
This will make it so it only accepts numbers and the special characters included in the script
Subscribed! The eval function makes this much easier. I also had to look up the difference between innerHTML and innerText. Thank you for this tutorial!
Don't Use eval() To Be Safer
This is a great tutorial, but for beginner programmers I would not recommend using eval() especially in real-world projects. To quote from MDN page "Warning: Executing JavaScript from a string is an enormous security risk. It is far too easy for a bad actor to run arbitrary code when you use eval(). See Never use eval()!, below."
they literally said this in the video lil bro
What is eval() means??
@@DeviKumavath The eval() function evaluates the specified expression, if the expression is a legal Python statement, it will be executed.
easily understandable, short so its impossible to get distracted and just delivered really well. great video, thanks
Been struggling to make calculator the whole day and decided to search it and this guy did it in under 15 minutes LOL I need some sleep!!
really nice, thanks. Loved the scale and speed - a great confidence builder. One tip for presentation - when you are working at the bottom of the screen, (e.g. @ 4:52 for about 30 seconds ) the player bar pops up and obscures your work, especially when I am flicking back and forth between YT and VS Code. Just a small thing but would help to follow along if most work is closer to the middle. Cheers.
Absolutely simple and exceptionally beginner friendly tutorial. Kudos to you!
Subscribed! Awesome video, Iv just started my Java script module and want to try making a calculator as a mini project. Will definitely be watching the rest of your work!
Awesome, thank you!
I'm new to this channel. He explained me a new idea to make calculator in 14 minutes
Welcome on board! I’m glad you enjoyed it 😊
Really well made tutorial video! Thanks a lot!
Now I would like to see how you do it without using eval()!
This was amazing and so easy to follow. Thank you so much!!!
I’m so glad that it was usefult to you 😊
in where we have to write that code
Thank you! I'm learning JavaScript. This was a little/lot above my knowledge but it was finally nice to implement some JavaScript vs. endless amounts of freeCodeCamp.
Great to hear!
Thank you so much. I’ll like to add something.
Instead of using eval(), use Function.
In that line where case Is “=“, you can set
display.innerText = Function(“return “ + display.innerText)();
Don’t forget to add your break. Thanks!
Thanks a lot for this tutorial, I'm learning Javascript and i needed a project to start with... this was simplified and precise....Subscribed
Thank you! I have never seen Javascript in action before and after this video it looks easier
thanks!
english isnt my first language and this tutorial was awesome!
That was so simple! The other guy uses class and lot of functions and it takes more than 30mns. But yours is so simple! +1 sub THANKS!
thanks for this video in javascript build a calculator seem to be difficult but with this video every thing is clear thanks so much
Hey man, thanks for the tutorial, easy and understandable... just one thing i want to ask... aren't you hungarian??? :D
a big help. im still starting to learn. the delivery is easy to understand. thank you very much
trying to learn how to use javascript with html and this video is gold. thanks
Thank you Marcus! I’m so glad that you found it useful
What is the alternative function to the eval();
you gotta make one yourself.
Thanks man. was searching something like this. simple but effective
Thanks man making video informative and simple
Bro your video is really awesome very easy to understand. Thankyou😊
Thanks for the feedback! I’m glad you enjoyed and understood it 😌
just finished this tutorial now i am just your fan... Almost Subscribe
Great tutorial mate loved it
I’m glad you loved it!
Thanks for the kind words :)
It was really good love from India .💐💐💐💐💐💐
Outstanding! My first working app, Thanks!
I really liked your way to explain and your code is so clear. SUBSCRIBED
Thanks for the kind words expect more to come 😉
I truly appreciate it. I wish I could know all the parameters you use. I think is a matter of time. Thank you!👋👋👋👋
THANK YOU VERY MUCH SIR...REALLY HATS OFF TO SHOW RESPECT
Lol you just made me laugh and smile and wonder and scream at once 😆 thank you so much sir... this is perfect for an assignment at last
This was the simplest way to make a calculator 😃😃😃 i love it
great jobs!🏆
you sir, are very underrated! You are very good teacher and explained everything you did and why you did. Thankyou!
\
Thanks for the kind words!
Really simple and great explanation.
Thanks 😊
Great tutorial, thank you so much, I'm surely gonna watch more videos from you!!!
Thank you for the tutorial! 😄
Your method is amazing Sir... thank you
Thanks for the video! What VS theme do you use?:)
Very good thank you and the last security demo is very valuable
keep making this stuff, it helped a lot :)
Thanks, stay tuned for more ;)
Nicely Done bro 👏👍
Thanks ✌
wow! this is good stuff, thank you
Holy sh*t! This was genius.
I hope you create more videos about programming language.
WAOOOOH WAOOH WAAOOOH
Thank you so much !!
Amazing man
so easy and clear. Thank you very much.
You’re welcome, thanks for the kind words.
Your code is amazing!😮
Thanks so much for this wonderful tutorials
Subscribed already
hello, thank you so much. This tutorial was so simple . I have a question, if i want the content on the display to automatically clear when i select a new number after using the equal to sign, how will this work.
really nice prof video.
Great video. Thanks for sharing
Thanks for the feedback!
I have a question, When I changed the divide to "÷" Error kept coming so I was wondering if you could tell me how to make it so that it also works with "÷"?
the valid Math operator to divide is the "/" symbol and it's not possible to override or "operator overload" it
This was great! I'm new to javascript and this helped me alot.
I've been trying to add keydown function to this calculator.
How can i do that?
You have to add event listeners to the keydown event of different keys for example the numbers 1, 2, 3, 4, 5, 6, 7, 9, 0 amd everything else you want to trigger with keydown. Then in the event listener’s callback function you can add the value of the pressed button to the display.
@@JsAcademyOfficial It might be alot to ask but do you have an example for how one of these eventListeners would look? For example for key 1?
I made a quick example from this on CodePen.
Feel free to adjust it to only work with arithmetic operators and numbers :) Take this as a homework :)
Hope you find it useful.
codepen.io/javascriptacademy-stash/pen/jOyLmam
@@JsAcademyOfficial Thank the lord for people like you! This was exactly what i needed :) Thank you very much for all the help and the fast respons!
Thanks for the kind words :)
Thanks for the help!
You’re welcome 🙂
Such a great video. Thank you so much. Subscribing for more .
You gained one subscriber.Thank You 🙏
Welcome to the Academy! 😊
thanks for this video tutorial this easily explained thank you so much again !!!!!!!!!!!!!!!!
You’re welcome
Which theme are you using
am i missing a package or something? i was even at the point of copy and pasting everything exactly and it still didn't work. every single html js and css. did something break or something?
why did you use div instead of input for the calculator display
Nice video! I'm wondering what kind of accent is this you have :D Jól sejtem, hogy magyar? :D
Thanks 😉 Igen magyar az akcentus :)
@@JsAcademyOfficial Akkor jól éreztem :D Jó kis videó, csak így tovább! Nem rég kezdtem kódolni és pont ezzel a feladattal küszködöm jelenleg. Amúgy meg ment a sub!
Sok sikert és kitartást hozzà! Köszi a kedves szavakat 😌
Hi, thank you so much for your helpful video. However, I did not understand the part in javascript ,
First button.map(button =>{ I really dont understand why you express this and why we use map here and why we use the equal sign and larger sign in this situation
Second, I dont understand what e.target.innerText mean in here
Hi Linh!
The equal sign and the > symbol is a shorthand for functions. We use map to loop through the array. The target means the dom element (container) that was clicked and innerText means its content. Feel free to check out arrow functions arrays and dom on w3schools.com
Have a nice day! 😊
So awesome project
Thank you so much, u're the best.
This might be the easiest javascript tutorial ever !!!
What is "button => {}" in the buttons.map?
That is called an arrow function. You can find more info here: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions
I dont understand why u add the 'e' after declaring the click event listener at 7:01.. what does it do? and why shouldnt i just leave a blank ( ) ?
im just starting so i googled a lot about all the things you did on the vid but i cant find an answer to that, i dont know how to word my question to google.. but i hope u can answer it!
but how to fix if you tap equal sign that don't have items it give me undefined
Very easy and understandable,
may I ask if the buttons are not responding and not displaying what I do on the output?
If the buttons do not work there’s a high chance that the event listeners/handlers are not set properly. Check for typos in classnames and ids and double check the event handlers
@@JsAcademyOfficial Update: I found the problem all along it was the wrong browser i was using for the project.
Again thank you for the help sir 💚
Very nice video
Thanks for the feedback!
Thankyou 😊
Good tuto, thank you
I’m glad you found value in it :)
Subscribed
👍👍👍
this is magic
The upper part of the calculator css is not available...I can't just see it
You Helped me get flying colors on my exam today! Thank you so much for your help!
But i have a question, I have been trying to find the perfect code editor for a beginner like me, may I know that name of the software you used for this video?
Looks like they're using vscode as their editor
its visual studio code
can you please make this calculator automatically working with keyboard... a tutorial for scientific calculator will be appreciated.... best
or just provide the code that it start working with computer keyboard automatically..
thanks for a great tutorial
Application with real user instead of eval what should we use?
I'd install this package mathjs.org/ and use math.evaluate()
thanks man🙏🙏❤❤
could we have used forEach instead of map to add event listeners to each button
Thanks for the video. How can I disable the alphabet keyboard but keeping just the numbers using the switch statement? also how can I limit the number of digits to show on the display?
yo this is sick
Thank you!
thanks a lot.
Hello I followed this tutorial and it doesn't work my problem is that it doesn't type when I click the buttons, please help me I'm in a rush
thx duude yr a beast
great work
Thank you Singh! 😊
That was amazingggg stuff!! I really appreciate your work sir, easy and not complicated at all.
But can you tell me if i had used '*' sign as a HTML Entity, then how to use '*' multiply operation in JS??
Hi Akshay!
Thanks for the kind words. I hope I understand your question. The eval function takes a string and runs it as it would be javascript so the * sign will be translated into the multiplication operator when using it within eval
Thanks
hoooooolyyy your code is amazing
What if I wanted the change the * for X can I use
case 'X':
display.innerText = '*';
break;
I found it works like this but what i really want to do is display x but for it to really function as *
case 'X':
display.innerText += '*';
break;