Skip to content

Commit 82d2b09

Browse files
committed
code cleanup
1 parent a3d4923 commit 82d2b09

File tree

1 file changed

+0
-16
lines changed

1 file changed

+0
-16
lines changed

script-solved.js

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,35 @@
1-
// প্রয়োজনীয় সব ইলিমেন্ট সিলেক্ট করে নিন
21
const tipCalculator = document.querySelector('.tip-calculator');
32
const selectTotal = document.querySelector('.amount_total span');
43
const selectTipPerPerson = document.querySelector('.tip_per_person span');
54

6-
// ডাটা স্ট্রাকচার, ইনপুট ফিল্ডের নামের সাথে মিল রেখে
75
const data = {
86
bill: 0,
97
tip: 0,
108
person: 1
119
}
1210

13-
// ফর্মের ইনপুট ফিল্ডে কোনোরকম পরিবর্তন আসলেই আমরা অ্যাকশন নিবো
1411
tipCalculator.addEventListener('change', (e) => {
15-
// ফর্মের ইনপুট ঠিক আছে কি নেই সেটার উপর ভিত্তি করে এখানে অ্যাকশন নিবো
1612
if(validateInput(e.target.value)) {
17-
// ইনপুট ঠিক থাকলে আমরা আমাদের এরর ক্লাসটা সরিয়ে নিবো ইনপুট থেকে
1813
e.target.classList.remove('err');
1914

20-
// এখন আমরা আমাদের টার্গেগেটেড ইলিমেন্টটার ভ্যালু অ্যাসাইন করবো(এজন্যেই ডাটা স্ট্রাকচারের কীগুলোর নাম ইনপুট ফিল্ডের নামের সাথে মিল রেখেছি), আর সেই ভ্যালো যাতে ফ্লোট নাম্বার হয় সেটাও খেয়াল রাখবো
2115
data[e.target.name] = parseFloat(e.target.value);
2216

23-
// টোটাল টিপ কতো আসে সেটা হিসেব করা
2417
const tip = (data.bill * data.tip) / 100;
2518

26-
// টোটাল হিসেব করবো
2719
let total = data.bill + tip;
28-
// পার পার্সন হিসেব করা
2920
total = total / data.person;
30-
// টোটালটার দশমিককে ফিক্সড করে দেওয়া
3121
total = total.toFixed(2);
32-
// টোটালটা আমাদের ডকুমেন্ট এ শো করাবো
3322
selectTotal.textContent = total;
3423

35-
// পার পার্শনের টিপ কতো আসে সেটা হিসেব করা
3624
let tip_per_person = tip / data.person;
37-
// দশমিককে ফিক্সড করে দেওয়
3825
tip_per_person = tip_per_person.toFixed(2);
39-
// ডকুমেন্ট এ শো করানো
4026
selectTipPerPerson.textContent = tip_per_person;
4127

4228
} else {
43-
// ইনপুট ভ্যালিড না হলে এরর ক্লাস লাগাবো ইউজারকে সুন্দর একটা ভুল হয়েছে ইফেক্ট দেওয়ার জন্যে
4429
e.target.classList.add('err');
4530
}
4631
});
4732

48-
// ইনপুট ভ্যালিডেট করা, ইনপুট আসলেই নাম্বার কিনা
4933
const validateInput = input => {
5034
return (/^\d+$/).test(input);
5135
}

0 commit comments

Comments
 (0)