Sha256: d92afe3371dbe41a51f3948db35f0bd82d658815d3f9ade82204b3ab96d5b6ed

Contents?: true

Size: 623 Bytes

Versions: 211

Compression:

Stored size: 623 Bytes

Contents

const LETTERS = 'abcdefghijklmnopqrstuvwxyz';
const REVERSED_LETTERS = [...LETTERS].reverse().join('');

function insertSpacing(s, interval) {
  const matcher = new RegExp('.{1,' + interval + '}', 'g');
  return s.match(matcher).join(' ');
}

function invert(character) {
  if (character.match(/\d/)) {
    this.push(character);
  } else {
    this.push(LETTERS[REVERSED_LETTERS.indexOf(character)]);
  }
}

export default {
  encode:  (s) => {
    let encoded;
    const characters = [];
    [...s.toLowerCase()].forEach(invert, characters);
    encoded = insertSpacing(characters.join(''), 5);
    return encoded;
  }
};

Version data entries

211 entries across 211 versions & 1 rubygems

Version Path
trackler-2.1.0.36 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.34 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.33 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.32 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.31 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.30 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.29 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.28 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.27 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.26 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.25 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.24 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.23 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.22 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.21 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.20 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.19 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.18 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.17 tracks/ecmascript/exercises/atbash-cipher/example.js
trackler-2.1.0.16 tracks/ecmascript/exercises/atbash-cipher/example.js