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

JavaScriptで配列を電話番号形式の文字列に変換する方法

問題

ちょうど10個の正の整数を含む配列 arr を受け取るJavaScript関数を作成することを考えます。

この関数は、配列の要素を一般的な電話番号の形式である「(XXX) XXX-XXXX」の文字列に組み立てて返す必要があります。

例えば、関数への入力が以下の場合を考えてみましょう。

入力

const arr = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0];

出力

const output = '(987) 654-3210';

コード例

以下がその実装コードです。

const arr = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0];
const createNumber = (arr = []) => {
    let res = '';
    arr = arr.map(String);
    res += `(${arr[0]+arr[1]+arr[2]}) `;
    res += `${arr[3] + arr[4] + arr[5]}-`;
    res += arr[6] + arr[7] + arr[8] + arr[9];
    return res;
};
console.log(createNumber(arr));

出力結果

(987) 654-3210

コードの解説

このコードのポイントは、Array.prototype.map() メソッドを使って、配列内のすべての数値をあらかじめ文字列に変換しておく点です。これを行わないと、後の連結処理で数値同士が足し算されてしまい、意図した結果になりません。

その後、テンプレートリテラルを活用しながら、以下の手順で電話番号形式の文字列を組み立てています。

  • 最初の3つの要素(インデックス0〜2)を括弧 () で囲む
  • 次の3つの要素(インデックス3〜5)を追加し、ハイフン - で区切る
  • 最後の4つの要素(インデックス6〜9)を末尾に連結する

このように、配列操作と文字列連結を組み合わせることで、任意の10桁の数字配列を簡単に電話番号形式へ整形できます。応用として、国際電話の形式や別の区切り文字への対応なども、同じ考え方で柔軟に実装できます。

  1. JavaScriptの基本配列メソッド解説!push・pop・shift・unshift・spliceの使い方を実例付きで紹介

    JavaScriptには、配列を操作するための便利な組み込みメソッドが数多く用意されています。その中でも特によく使われるのが、要素の追加や削除を行う以下の5つの基本メソッドです。 JavaScriptの主要な配列メソッド一覧 メソッド説明 Array.push()配列の末尾に要素を追加します。 Array.pop()配列の末尾から要素を取り除きます。 Array.unshift()配列の先頭に要素を追加します。 Array.shift()配列の先頭から要素を取り除きます。 Array.splice()配列内の任意の位置で要素の追加・削除を行います。 これらのメソッドは、配列の

  2. JavaScriptで配列をSet(セット)に変換する方法

    JavaScriptで配列をSetに変換するときの基本JavaScriptでは、Setオブジェクトを使うことで、配列から重複しない一意の値だけを持つコレクションを簡単に作成できます。SetはES6(ECMAScript 2015)で導入された組み込みオブジェクトで、同じ値が複数回追加されても自動的に1つにまとめられるのが特徴です。変換自体は非常にシンプルで、new Set(配列)と書くだけで完了します。コード例:配列からSetへの変換以下は、重複を含む配列をSetに変換して画面に表示するサンプルコードです。<!DOCTYPE html> <html lang=ja> &