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

配列内の数値の符号を反転する方法 - JavaScript

JavaScriptでは、正の数と負の数が混在する配列を受け取り、その場で(in place)各要素の符号を反転させる関数が必要になることがあります。つまり、正の数は対応する負の数に、負の数は対応する正の数に変換します。

実装の考え方

符号の反転は、各要素に -1 を掛けるだけで実現できます。配列を走査しながら各要素を書き換えることで、元の配列自体を直接更新できます。

それでは、実際のコードを見てみましょう。

コード例

const arr = [12, 5, 3, -1, 54, -43, -2, 34, -1, 4, -4];

const changeSign = arr => {
    arr.forEach((el, ind) => {
        arr[ind] *= -1;
    });
};

changeSign(arr);
console.log(arr);

出力結果

コンソールには以下のように出力されます。

[
    -12, -5,  -3, 1, -54,
     43,  2, -34, 1,  -4,
      4
]

別のアプローチ:mapを使う方法

元の配列を変更せず、新しい配列として結果を取得したい場合は、map() メソッドを使うとより簡潔に記述できます。

const newArr = arr.map(num => -num);
console.log(newArr);

-num は単項マイナス演算子による符号反転で、num * -1 と同じ結果になります。用途に応じて、破壊的な forEach 方式か、非破壊的な map 方式を選択するとよいでしょう。

  1. JavaScriptで配列を空にする方法まとめ【3つの手法と使い分けのポイント】

    JavaScriptで配列を空にする(初期化する)方法は複数あります。それぞれの手法には特徴や注意点があり、状況に応じて適切に使い分けることが重要です。この記事では、代表的な3つの方法と、それぞれのメリット・デメリットを詳しく解説します。まず、以下のような配列があると仮定します。let arr = [1, test, {}, 123.43];方法1:新しい空の配列で置き換えるarr = [];変数arrに新しい空の配列を再代入する方法です。最もシンプルかつ高速な手法として知られています。ただし注意点として、元の配列への参照がプログラムの他の場所に存在する場合、それらの参照は自動的に更新されませ

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

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