Advertisement
Guest User

Untitled

a guest
May 23rd, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. var isValidRut = function (rut) {
  2.  
  3. rut = rut.split('.').join("");
  4. rut = rut.split('-').join("");
  5. rut = rut.split(',').join("");
  6. rut = rut.split('_').join("");
  7. rut = rut.split(' ').join("");
  8.  
  9. body = rut.substring(0, rut.length - 1);
  10. dv = rut.substring(rut.length - 1, rut.length);
  11.  
  12. dvGenerate = getDV(body)
  13. return (dv === dvGenerate)
  14. }
  15.  
  16. var getDV = function (rut) {
  17. ary = [2, 3, 4, 5, 6, 7, 2, 3]
  18. sum = 0
  19.  
  20. for (i = rut.length - 1; 0 <= i; i--) {
  21. d = parseInt(rut[i])
  22. sum = parseInt(sum) + d * parseInt(ary[rut.length - (i + 1)])
  23. }
  24.  
  25. rest = parseInt(11 - (sum % 11))
  26. return (rest === 11 ? "0" : (rest === 10 ? "k" : rest.toString(10)))
  27. }
  28.  
  29. var testIsValidRut = function (val, exp) {
  30. console.log(isValidRut(val) ? "OK" : "Error with " + val)
  31. }
  32.  
  33.  
  34. testIsValidRut("17.418.830-0", true)
  35. testIsValidRut("15,131,430-9", true)
  36. testIsValidRut("9,984,803-0", true)
  37. testIsValidRut("17.418.830-1", false)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement