Advertisement
viligen

distanceConverter

Jun 2nd, 2022
726
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function attachEventsListeners() {
  2.     let inputToMeters = {
  3.         km: (input) => input * 1000,
  4.         m: (input) => input * 1,
  5.         cm: (input) => input / 100,
  6.         mm: (input) => input / 1000,
  7.         mi: (input) => input * 1609.34,
  8.         yrd: (input) => input * 0.9144,
  9.         ft: (input) => input * 0.3048,
  10.         in: (input) => input * 0.0254,
  11.     };
  12.  
  13.     let outputUnits = {
  14.         km: (n) => n / 1000,
  15.         m: (n) => n / 1,
  16.         cm: (n) => n * 100,
  17.         mm: (n) => n * 1000,
  18.         mi: (n) => n / 1609.34,
  19.         yrd: (n) => n / 0.9144,
  20.         ft: (n) => n / 0.3048,
  21.         in: (n) => n / 0.0254,
  22.     };
  23.  
  24.     let inputUnit = document.getElementById("inputUnits");
  25.     let inputNum = document.getElementById("inputDistance");
  26.  
  27.     let outUnit = document.getElementById("outputUnits");
  28.     let outNum = document.getElementById("outputDistance");
  29.  
  30.     let convBtn = document.getElementById("convert");
  31.     convBtn.addEventListener("click", onClick);
  32.  
  33.     function onClick() {
  34.         let inUn = inputUnit.value;
  35.  
  36.         let inN = Number(inputNum.value);
  37.  
  38.         let outUn = outUnit.value;
  39.  
  40.         let inNtoM = inputToMeters[inUn](inN);
  41.  
  42.         outNum.value = outputUnits[outUn](inNtoM);
  43.     }
  44. }
  45.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement