simple pin encode decode

by borisjavier

JavaScript

//Encode
var num = 123456;
var digits = num.toString().split('');
var realDigits = digits.map(Number);
let realDig = [];
console.log(realDigits);
realDigits.forEach(function (e) {
  let a;
	switch(e) {
   case 0: a= 10-3; break;
   case 1: a= 11-3; break;
   case 2: a= 12-3; break;
   default: a= e-3; break
  }
   realDig.push(a);
});

console.log(realDig);

const int = realDig.reduce((accum, digit) => (accum * 10) + digit, 0);//convert array of digits into number

console.log(int); 

//Decode

let digitsDecode = int.toString().split('');
var realDigits = digitsDecode.map(Number);
console.log(realDigits)
let realDigDec = [];
realDigits.forEach(function (e) {
  let a;
	switch(e) {
   case 7: a= 0; break;
   case 8: a= 1; break;
   case 9: a= 2; break;
   default: a= e + 3; break
  }
   realDigDec.push(a);
});

console.log(realDigDec);

const intDec = realDigDec.reduce((accum, digit) => (accum * 10) + digit, 0);

console.log(intDec)