javascript:配列内の値が別の配列にある場合、その値を1回だけ削除します

ノエミー・カレット

そのため、arrayBにあるarrayAの番号を削除しようとしています。しかし、数値がそのarrayBで1回だけであり、そのarrayAで複数回である場合、関数でそれらの1つだけを削除する必要があります。

私の関数は機能するように見えますが、機能しません...

期待される出力は:1,3,3,4,5

let arrayA = [1,1,2,3,3,3,4,4,5]
let arrayB = [1,2,3,4]

function remove(arrayB,arrayA){
//newarray is the result array i want to get
    let newarray = [];
//counter will controll if a number is more than one time in my arrayA
    let counter = [];

    arrayA.forEach(function(n){
//if a number of my arrayA is not in my arrayB
        if(arrayB.indexOf(n) == -1){
              newarray.push(n);
              }
//if a number of my arrayB is only one time in my arrayA
              else if(a.indexOf(n) == a.lastIndexOf(n)){
                     }
//if a number is more than one time but its the first one we meet
                    else if(a.indexOf(n) !== a.lastIndexOf(n) && counter.includes(n) == false){
//push it into the counter array so we'll know we already had this number
                          counter.push(n)
                          }
// if it's the second time we have to keep it and get it in the newarray
                               else {
                                    newarray.push(n);
                                    }
        })
  document.write(newarray)
  }

バオ

単一のループで十分です。arrayBをループし、見つかった要素をarrayAから削除します。indexOf常に最初のヒットで停止するため、かなり簡単になります。

let arrayA = [1,1,2,3,3,3,4,4,5];
let arrayB = [1,2,3,4];
arrayB.forEach(e => arrayA.splice(arrayA.indexOf(e), 1));
console.log(arrayA);

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ある配列の値が別の配列に存在する場合は配列を返します

分類Dev

Javascript-値が別の配列に存在しない場合は、配列から値を削除します

分類Dev

重複するキーの値を単純な単一の配列に合計し、そのキーをPHPで1回だけ表示します

分類Dev

オブジェクトに特定の値がある場合は、配列から配列を削除します

分類Dev

サブ配列に特定の値がある場合は、配列要素を削除します

分類Dev

条件が満たされた場合、ある配列から別の配列に値をコピーします

分類Dev

配列内の値とその配列が別の配列内にある

分類Dev

偽の値が配列にある場合に返します

分類Dev

配列内にあるJSONの値を出力し、この配列は別の配列内にあります

分類Dev

ある配列から別の配列に値を移動し、それらを削除します

分類Dev

配列内の2つの要素が合計値以下である回数をカウントします-Javascript

分類Dev

値が存在する場合に別の配列を使用して配列を順序付けるphp

分類Dev

PHPの配列1にある配列2の値を削除します

分類Dev

SQL Access、の別の列のすべての値が指定された範囲内にある場合にのみ、1つの列の値を合計します

分類Dev

値が一致する場合、dictの1つの配列から別の配列に特定の値をマージします

分類Dev

Python / Numpyで、その配列の以前の値の範囲内にある場合に、新しい配列に値を出力する方法

分類Dev

値が同じである場合、配列によって形成される辞書の要素を削除します

分類Dev

値が配列の2次元にある場合はtrueを返します

分類Dev

1つの配列の値を、キーが同じである別の配列にマージします

分類Dev

配列をループする時間の複雑さはどれくらいですか。最後の要素に到達したときに、別の配列を1回だけループする必要がある場合

分類Dev

別の文字列/配列Javascriptに基づいて1つの文字列/配列から値を削除します

分類Dev

ある列の数値が別の列の文字列内にある場合は、テーブルの行を削除します

分類Dev

Excel-セルに配列の値が含まれている場合は、その値を抽出します

分類Dev

合計して目標値になる可能性のある配列内の数値を見つけます

分類Dev

特定のキーの値が一致する場合は、1つの配列要素を別の配列に追加します

分類Dev

配列内の最高値を見つけるが、最高値が配列内の2か所以上に存在する場合はどうなりますか?

分類Dev

PHPが別の配列から特定の文字列を持っている場合、配列値を取得します

分類Dev

Javaの配列の先頭にある場合にのみnull値を削除します

分類Dev

配列キーが存在する場合は、その値を返します

Related 関連記事

  1. 1

    ある配列の値が別の配列に存在する場合は配列を返します

  2. 2

    Javascript-値が別の配列に存在しない場合は、配列から値を削除します

  3. 3

    重複するキーの値を単純な単一の配列に合計し、そのキーをPHPで1回だけ表示します

  4. 4

    オブジェクトに特定の値がある場合は、配列から配列を削除します

  5. 5

    サブ配列に特定の値がある場合は、配列要素を削除します

  6. 6

    条件が満たされた場合、ある配列から別の配列に値をコピーします

  7. 7

    配列内の値とその配列が別の配列内にある

  8. 8

    偽の値が配列にある場合に返します

  9. 9

    配列内にあるJSONの値を出力し、この配列は別の配列内にあります

  10. 10

    ある配列から別の配列に値を移動し、それらを削除します

  11. 11

    配列内の2つの要素が合計値以下である回数をカウントします-Javascript

  12. 12

    値が存在する場合に別の配列を使用して配列を順序付けるphp

  13. 13

    PHPの配列1にある配列2の値を削除します

  14. 14

    SQL Access、の別の列のすべての値が指定された範囲内にある場合にのみ、1つの列の値を合計します

  15. 15

    値が一致する場合、dictの1つの配列から別の配列に特定の値をマージします

  16. 16

    Python / Numpyで、その配列の以前の値の範囲内にある場合に、新しい配列に値を出力する方法

  17. 17

    値が同じである場合、配列によって形成される辞書の要素を削除します

  18. 18

    値が配列の2次元にある場合はtrueを返します

  19. 19

    1つの配列の値を、キーが同じである別の配列にマージします

  20. 20

    配列をループする時間の複雑さはどれくらいですか。最後の要素に到達したときに、別の配列を1回だけループする必要がある場合

  21. 21

    別の文字列/配列Javascriptに基づいて1つの文字列/配列から値を削除します

  22. 22

    ある列の数値が別の列の文字列内にある場合は、テーブルの行を削除します

  23. 23

    Excel-セルに配列の値が含まれている場合は、その値を抽出します

  24. 24

    合計して目標値になる可能性のある配列内の数値を見つけます

  25. 25

    特定のキーの値が一致する場合は、1つの配列要素を別の配列に追加します

  26. 26

    配列内の最高値を見つけるが、最高値が配列内の2か所以上に存在する場合はどうなりますか?

  27. 27

    PHPが別の配列から特定の文字列を持っている場合、配列値を取得します

  28. 28

    Javaの配列の先頭にある場合にのみnull値を削除します

  29. 29

    配列キーが存在する場合は、その値を返します

ホットタグ

アーカイブ