JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptでDNA配列をRNA配列へ変換する方法

DNAとRNAの関係

デオキシリボ核酸(DNA)は、生物システムにおける主要な遺伝情報の保存分子です。DNAはグアニン(G)、シトシン(C)、アデニン(A)、チミン(T)という4つの核酸塩基から構成されています。

一方、リボ核酸(RNA)は細胞内で主要なメッセンジャーとして機能する分子です。RNAは化学構造においてDNAとわずかに異なり、チミンを含みません。代わりに、RNAではチミンの位置にウラシル(U)という別の核酸塩基が使用されます。

課題

ここでは、与えられたDNA文字列を対応するRNA文字列に変換するJavaScript関数を作成します。

変換のルールは非常にシンプルで、DNA文字列中のすべての「T」を「U」に置き換えるだけです。

サンプルコード

以下がその実装例です。

const DNA = 'GCAT';
const DNAtoRNA = (DNA) => {
    let res = '';
    for(let i = 0; i < DNA.length; i++){
        if(DNA[i] === "T"){
            res += "U";
        }else{
            res += DNA[i];
        };
    };
    return res;
};
console.log(DNAtoRNA(DNA));

このコードでは、forループを使ってDNA文字列を1文字ずつ確認し、「T」であれば「U」に置き換えた新しい文字列を組み立てています。

より簡潔な書き方

同じ処理は、replace()メソッドや正規表現を使えば1行で実現することもできます。

const DNAtoRNA = (dna) => dna.replace(/T/g, 'U');

console.log(DNAtoRNA('GCAT')); // GCAU

出力結果

GCAU

入力された「GCAT」の中の「T」が「U」に変換され、「GCAU」というRNA文字列が出力されました。

まとめ

DNAからRNAへの変換は、文字列内の特定の文字を置き換える基本的な操作で実現できます。forループによる逐次処理でも、replace()メソッドのような組み込み関数でも対応可能です。状況に応じて、可読性とパフォーマンスのバランスを考えて最適な方法を選びましょう。

  1. JavaScriptのオブジェクト配列に配列メソッドを適用する方法

    JavaScriptでは、オブジェクトが格納された配列に対しても、通常の配列と同じようにpop()、push()、splice()などの標準的な配列メソッドをそのまま使用できます。オブジェクト配列はあくまで「配列」であるため、要素としてオブジェクトが入っていても配列操作のAPIは共通で動作します。 コード例 以下は、JavaScriptオブジェクトの配列に対して配列メソッドを使用するサンプルコードです。 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8

  2. JavaScriptのクロージャでプライバシー(変数の隠蔽)を実現する方法

    はじめに:クロージャとは何かJavaScriptにはクラスベース言語のような「private」修飾子が存在しないため、変数を外部から直接アクセスできないようにしたい場合、クロージャ(Closure)を活用するのが定番のテクニックです。クロージャとは、「関数が定義されたときのスコープ(外側の変数)への参照を保持し続ける仕組み」のことです。この性質を利用すると、関数の内部に閉じ込めた変数は外部から直接参照・書き換えできなくなり、いわばプライベートな状態として扱うことができます。以下に、クロージャを使ってプライバシー(変数の隠蔽)を実現するサンプルコードを示します。サンプルコード<!DOCTY