1. ホーム
  2. javascript

[解決済み] JavaScriptのArray.mapによる要素の削除

2022-10-24 17:23:28

質問

配列の項目を map() 関数でフィルタリングしたいと思います。以下はコードスニペットです。

var filteredItems = items.map(function(item)
{
    if( ...some condition... )
    {
        return item;
    }
});

問題は、フィルタリングされた項目がまだ配列のスペースを使用していることで、私はそれらを完全に消去したいと思います。

何かいい案はありませんか?

編集:ありがとうございます、私は忘れていました filter() を忘れていました。私が欲しかったのは、実際には filter() で、次に map() .

EDIT2: ご指摘ありがとうございます。 map()filter() はすべてのブラウザで実装されているわけではありませんが、私の特定のコードはブラウザで実行されることを意図したものではありません。

どのように解決するのですか?

を使用する必要があります。 filter メソッドを使うべきです。

などです。

var filteredItems = items.filter(function(item)
{
    return ...some condition...;
});

[編集: もちろん、いつでも sourceArray.filter(...).map(...) でフィルタリングと変異の両方を行うこともできます]。