Sha256: 561d54bad34dc6bc716b3bde35b0e75bc91cb2afffb07536cd6ba6255de1cc3a

Contents?: true

Size: 474 Bytes

Versions: 211

Compression:

Stored size: 474 Bytes

Contents

const possibleAllergies = [
  'eggs',
  'peanuts',
  'shellfish',
  'strawberries',
  'tomatoes',
  'chocolate',
  'pollen',
  'cats'
]; 

class Allergies {
  constructor(allergenIndex) {
    this.allergenIndex = allergenIndex;
  }

  list() {
    return possibleAllergies.filter((allergy, i) => {
      return this.allergenIndex & Math.pow(2, i);
    });
  }

  allergicTo(food) {
    return this.list().some(allergy => allergy === food);
  }
}

export default Allergies;

Version data entries

211 entries across 211 versions & 1 rubygems

Version Path
trackler-2.0.8.51 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.50 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.49 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.48 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.47 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.46 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.45 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.44 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.43 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.42 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.41 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.40 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.39 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.38 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.37 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.36 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.35 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.34 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.33 tracks/ecmascript/exercises/allergies/example.js
trackler-2.0.8.32 tracks/ecmascript/exercises/allergies/example.js