Sha256: ad5018fe286693f582c8683d9cb3d6113583a3dac26231d5cefbcd9a39ce19ed

Contents?: true

Size: 578 Bytes

Versions: 211

Compression:

Stored size: 578 Bytes

Contents

const ALPHA = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
      BASE = 10,
      usedNames ={};

const random = (max) => Math.floor(Math.random()*max);

const generateName = () => {
  let name = ALPHA.charAt(random(ALPHA.length))
    +ALPHA.charAt(random(ALPHA.length))
    +random(BASE)+random(BASE)+random(BASE);
  usedNames[name] ? name = generateName() : usedNames[name] = true;
  return name;
};

export default class Robot {
  constructor(){
    this.robotName = generateName();
  }

  get name() {
    return this.robotName;
  }

  reset() {
    this.robotName = generateName();
  }
}

Version data entries

211 entries across 211 versions & 1 rubygems

Version Path
trackler-2.0.0.0 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.4.1 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.4.0 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.3.0 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.2.1 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.2.0 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.1.2 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.1.1 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.1.0 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.0.1 tracks/ecmascript/exercises/robot-name/example.js
trackler-1.0.0 tracks/ecmascript/exercises/robot-name/example.js