Simple hex excercises

utilities.js 1.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. var hexCharacters = {
  2. "0": "0000",
  3. "1": "0001",
  4. "2": "0010",
  5. "3": "0011",
  6. "4": "0100",
  7. "5": "0101",
  8. "6": "0110",
  9. "7": "0111",
  10. "8": "1000",
  11. "9": "1001",
  12. "A": "1010",
  13. "B": "1011",
  14. "C": "1100",
  15. "D": "1101",
  16. "E": "1110",
  17. "F": "1111"
  18. };
  19. function padLeft(number, length) {
  20. var str = '' + number;
  21. while (str.length < length) {
  22. str = '0' + str;
  23. }
  24. return str;
  25. }
  26. function binaryToHex(binary) {
  27. var character = null;
  28. if (binary.length < 4) {
  29. binary = padLeft(binary, 4);
  30. }
  31. for (var c in hexCharacters) {
  32. if (hexCharacters[c] === binary) {
  33. character = c;
  34. }
  35. }
  36. return character;
  37. }
  38. function generateBinary(length) {
  39. var binary = '';
  40. while (binary.length < length) {
  41. var randomNumber = Math.floor(Math.random() * 10);
  42. if (randomNumber % 2 === 0) {
  43. binary += "0";
  44. }
  45. else {
  46. binary += "1";
  47. }
  48. }
  49. return binary;
  50. }