Sha256: 466a17b5428dabc65dac2988d91dcbf9d61196d5c15c70f5d70c76fb7138ce69

Contents?: true

Size: 969 Bytes

Versions: 211

Compression:

Stored size: 969 Bytes

Contents

const EARTH_TO_OTHER_PLANETS = {
  mercury: 0.2408467,
  venus: 0.61519726,
  earth: 1,
  mars: 1.8808158,
  jupiter: 11.862615,
  saturn: 29.447498,
  uranus: 84.016846,
  neptune: 164.79132
};

class SpaceAge {

  constructor(seconds) {
    this.seconds = seconds;
    this.earthYears = seconds / 31557600;
  }

  yearsOnPlanet(planet) {
    const years = this.earthYears / EARTH_TO_OTHER_PLANETS[planet];
    return parseFloat(years.toFixed(2));
  }

  onMercury() {
    return this.yearsOnPlanet('mercury');
  }

  onVenus() {
    return this.yearsOnPlanet('venus');
  }

  onEarth() {
    return this.yearsOnPlanet('earth');
  }

  onMars() {
    return this.yearsOnPlanet('mars');
  }

  onJupiter() {
    return this.yearsOnPlanet('jupiter');
  }

  onSaturn() {
    return this.yearsOnPlanet('saturn');
  }

  onUranus() {
    return this.yearsOnPlanet('uranus');
  }

  onNeptune() {
    return this.yearsOnPlanet('neptune');
  }

}

export default SpaceAge;

Version data entries

211 entries across 211 versions & 1 rubygems

Version Path
trackler-2.0.8.31 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.30 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.29 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.28 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.27 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.26 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.24 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.23 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.22 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.21 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.20 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.19 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.18 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.17 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.16 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.15 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.14 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.13 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.12 tracks/ecmascript/exercises/space-age/example.js
trackler-2.0.8.11 tracks/ecmascript/exercises/space-age/example.js