យើងមាន ប្រអប់ ២ សំរាប់បញ្ចូលតំលៃ រួចហើយយើងចាប់តំលៃនិងបូកចូលគ្នា បន្ទាបមកវាបង្ហាញនៅប្រអប់ទី៣ តាមរយៈ value។ ហើយខាងក្រោមនេះយើងបោះតំលៃទៅឲ្យប្រអប់ទី៣ លេងតាមរយៈ value ។
<body> <input type="text" id="num1"> <input type="text" id="num2"> <input type="button" value="+" id="btn" onclick="calu()"> <input type="text" id="result"> <script> function calu(){ let a = document.getElementById("num1") let b = document.getElementById("num2") let result = document.getElementById("result") result.value = 100 } </script> </body>

នៅចំនុចខាងក្រោមនេះប្រសិនជាយើងមិនដាក់ value នៃ a និង b ទេនោះវាចេញតំលៃជា [object HTML elemnt]
<script> function calu(){ let a = document.getElementById("num1") let b = document.getElementById("num2") let result = document.getElementById("result") result.value = a + b } </script>

ដូចនេះយើងដាក់ value ទើបយើងអាចចាប់ទិន្ន័យមកប្រើបាន
<script> function calu(){ let a = document.getElementById("num1") let b = document.getElementById("num2") let result = document.getElementById("result") result.value = a.value + b.value } </script>

វាចាប់តំលៃបានហើយ ប៉ុន្តែវាមិនទាន់បូកឲ្យយើងទេ វាគ្រាន់តែចាប់តំលៃទាំងពីរដាក់ចូលគ្នា។ ដោយសារវាគិតវាតំលៃទាំងពីរនេះគឺជាប្រភេទ string ដូចនេះវាមិនបូកទេ។ នៅក្នុង javascript + (សញ្ញាបូក) នេះវាមានតួនាទីពីរគឺ បូកតំលៃនិង ភ្ជាប់ string ។
Casting
ដើម្បីបំលែង type ពី string ទៅលេខយើងប្រើ parse..។ ដោយ parse មានគឺ parseINT និង ParseFloat
<script> function calu(){ let a = document.getElementById("num1") let b = document.getElementById("num2") let result = document.getElementById("result") result.value = parseFloat(a.value) + parseFloat(b.value) } </script>

<body> <input type="text" id="num1"> <input type="text" id="num2"> <input type="button" value="+" id="btn" onclick="calu()"> <input type="text" id="result"> <script> function calu(){ let a = document.getElementById("num1") let b = document.getElementById("num2") let result = document.getElementById("result") result.value = parseFloat(a.value) + parseFloat(b.value) } </script> </body>
0 Comments