Sha256: d35165ce0108096766abd66072fc291584065e3e197bf76886fe1b5d28997878

Contents?: true

Size: 467 Bytes

Versions: 141

Compression:

Stored size: 467 Bytes

Contents

'use strict';

var DnaTranscriber = function () {};

var dnaToRna = {
  G: 'C',
  C: 'G',
  T: 'A',
  A: 'U'
};

var transcribeDna = function (dna, lookupTable) {
  return dna.replace(/./g, function (dnaNucleotide) {
    if (!(dnaNucleotide in lookupTable)) { throw Error('Invalid input'); }
    return lookupTable[dnaNucleotide];
  });
};

DnaTranscriber.prototype.toRna = function (dna) {
  return transcribeDna(dna, dnaToRna);
};

module.exports = DnaTranscriber;

Version data entries

141 entries across 141 versions & 1 rubygems

Version Path
trackler-2.2.1.38 tracks/javascript/exercises/rna-transcription/example.js