24894
22753
数値の配列があり、.push()メソッドを使用して要素を追加しています。
配列から特定の要素を削除する簡単な方法はありますか?
私は次のようなものに相当するものを探しています:
array.remove(number);
コアJavaScriptを使用する必要があります。フレームワークは許可されていません。 
1
2
3
4
次
indexOfを使用して削除する配列要素のインデックスを見つけ、スプライスを使用してそのインデックスを削除します。
splice()メソッドは、削除することで配列の内容を変更します
既存の要素および/または新しい要素の追加。
const array = [2、5、9];
console.log(array);
const index = array.indexOf(5);
if(index> -1){
array.splice(index、1);
}
//配列= [2、9]
console.log(array);
スプライスの2番目のパラメータは、削除する要素の数です。 spliceはその場で配列を変更し、削除された要素を含む新しい配列を返すことに注意してください。
完全を期すために、ここに関数があります。最初の関数は1つのオカレンスのみを削除し(つまり、[2,5,9,1,5,8,5]から5の最初の一致を削除します)、2番目の関数はすべてのオカレンスを削除します。
関数removeItemOnce(arr、value){
var index = arr.indexOf(value);
if(index> -1){
arr.splice(index、1);
}
到着を返す;
}
関数removeItemAll(arr、value){
var i = 0;
while(i  = 0; i-){
if(array [i] === number){
array.splice(i、1);
}
}
インデックスiの要素を存在させたくないが、他の要素のインデックスを変更したくない場合:
array [i]を削除します。
|
2016年10月に編集
シンプルで直感的かつ明確に行う(オッカムの剃刀)
不変ですか(元の配列は変更されません)
お使いのブラウザがそれらをサポートしていない場合は、標準のJavaScript関数でそれを行います-polyfillを使用します
このコード例では、「array.filter(...)」関数を使用して、配列から不要なアイテムを削除します。この関数は元の配列を変更せず、新しい配列を作成します。お使いのブラウザがこの機能をサポートしていない場合(バージョン9より前のInternet Explorer、バージョン1.5より前のFirefoxなど)、Mozillaのフィルタポリフィルの使用を検討してください。
アイテムの削除(ECMA-262 Edition 5コード別名オールドスタイルJavaScript)
var value = 3
var arr = [1、2、3、4、5、3]
arr = arr.filter(function(item){
返品!==値
})
console.log(arr)
// [1、2、4、5]
アイテムの削除(ECMAScript 6コード)
値= 3とします
arr = [1、2、3、4、5、3]
arr = arr.filter(item => item!== value)
console.log(arr)
// [1、2、4、5]
重要ECMAScript6 "()=> {}"矢印関数の構文は、Internet Explorer、45バージョンより前のChrome、22バージョンより前のFirefox、および10バージョンより前のSafariではサポートされていません。古いブラウザでECMAScript6構文を使用するには、BabelJSを使用できます。
複数のアイテムの削除(ECMAScript 7コード)
この方法の追加の利点は、複数のアイテムを削除できることです。
forDeletion = [2、3、5]
arr = [1、2、3、4、5、3]
arr = arr.filter(item =>!forDeletion.includes(item))
// !!! array.includes(...)のサポートについて以下をお読みください!!!
console.log(arr)
// [1、4]
重要「array.includes(...)」関数は、Internet Explorer、47バージョンより前のChrome、43バージョンより前のFirefox、9バージョンより前のSafari、および14バージョンより前のEdgeではまったくサポートされていないため、Mozillaのポリフィルを次に示します。
複数のアイテムを削除する(将来的には)
「This-BindingSyntax」の提案が受け入れられた場合は、次のことができます。
// array-lib.js
エクスポート関数remove(... forDeletion){
this.filter(item =>!forDeletion.includes(item))を返します
}
// main.js
import {remove} from './ array-lib.js'
arr = [1、2、3、4、5、3]
// :: This-バインディング構文の提案
//「仮想メソッド」として「削除」関数を使用
//Array.prototypeを拡張せずに
arr = arr :: remove(2、3、5)
console.log(arr)
// [1、4]
BabelJSで自分で試してみてください:)
参照
Array.prototype.includes
機能構成
|
空いた場所を残したいかどうかによります。
空のスロットが必要な場合:
array [index] =未定義;
空のスロットが必要ない場合:
//オリジナルを保持するには:
// oldArray = [... array];
//これは配列を変更します。
array.splice(index、1);
また、そのアイテムの値が必要な場合は、返された配列の要素を格納するだけです。
var value = array.splice(index、1)[0];
配列の両端を削除する場合は、最後の配列にarray.pop()を使用するか、最初の配列にarray.shift()を使用できます(どちらもアイテムの値を返します)。
アイテムのインデックスがわからない場合は、array.indexOf(item)を使用して取得できます(if()で1つのアイテムを取得するか、while()ですべてを取得します)。 array.indexOf(item)は、インデックスを返すか、見つからない場合は-1を返します。
|
友人がInternetExplorer 8で問題を抱えていて、彼が何をしたかを見せてくれました。私は彼にそれが間違っていると言いました、そして彼は彼が答えを得たと私に言いましたここに。現在の上位の回答は、すべてのブラウザ(Internet Explorer 8など)で機能するわけではなく、アイテムの最初の出現のみが削除されます。
アレイからすべてのインスタンスを削除します
関数array_remove_index_by_value(arr、item)
{{
for(var i = arr.length; i--;)
{{
if(arr [i] === item){arr.splice(i、1);}
}
}
配列を逆方向にループし(アイテムが削除されるとインデックスと長さが変更されるため)、アイテムが見つかった場合は削除します。すべてのブラウザで動作します。
|
2つの主要なアプローチがあります。
splice():anArray.splice(index、1);
削除:anArray [インデックス]を削除します。
配列にdeleteを使用する場合は注意してください。オブジェクトの属性を削除するのには適していますが、配列にはあまり適していません。配列にはスプライスを使用することをお勧めします。
配列にdeleteを使用すると、anArray.lengthに対して誤った結果が得られる可能性があることに注意してください。つまり、deleteは要素を削除しますが、lengthプロパティの値は更新しません。
削除を使用した後、インデックス番号に穴が開くことも予想されます。削除を使用する前のインデックス1、3、4、8、9、および11と長さを持つことになります。その場合、インデックスはシーケンシャルではなくなるため、すべてのインデックス付きforループがクラッシュします。
何らかの理由でdeleteを使用せざるを得ない場合は、配列をループする必要があるときに、ループごとに使用する必要があります。実際のところ、可能であれば、インデックス付きのforループの使用は常に避けてください。そうすれば、コードはより堅牢になり、インデックスに関する問題が発生しにくくなります。
|
Array.prototype.remove_by_value = function(val){
for(var i = 0; i  row.id === 5);
削除された変数= helper.remove(arr、row => row.name.startsWith( 'BMW'));
##定義
var helper = {
//最初のオカレンスを削除して返します
removeOne:function(array、predicate){
for(var i = 0; i  [2、3、4]
|
ES6を使用できます。たとえば、この場合、値「3」を削除するには、次のようにします。
var array = ['1'、 '2'、 '3'、 '4'、 '5'、 '6']
var newArray = array.filter((value)=> value!= '3');
console.log(newArray);
出力:
["1"、 "2"、 "4"、 "5"、 "6"]
|
削除された位置を削除した新しい配列が必要な場合は、いつでも特定の要素を削除して、配列を除外できます。 filterメソッドを実装していないブラウザーでは、配列オブジェクトの拡張が必要になる場合がありますが、長期的には、次のことを行うだけなので簡単です。
var my_array = [1、2、3、4、5、6];
my_array [4]を削除します。
console.log(my_array.filter(function(a){return typeof a!== 'undefined';}));
[1、2、3、4、6]と表示されます。
|
JavaScriptを使用して配列からアイテムを削除するいくつかの方法があります。
説明されているすべての方法は、元の配列を変更するのではなく、代わりに新しい配列を作成します。
アイテムのインデックスを知っている場合
配列があり、位置iのアイテムを削除するとします。
1つの方法は、slice()を使用することです。
const items = ['a'、 'b'、 'c'、 'd'、 'e'、 'f']
const i = 3
const FilteredItems = items.slice(0、i).concat(items.slice(i + 1、items.length))
console.log(filteredItems)
スライス()は、受け取ったインデックスを使用して新しい配列を作成します。開始から削除するインデックスまで新しい配列を作成し、削除した配列の次の最初の位置から配列の最後まで別の配列を連結するだけです。
あなたが価値を知っているなら
この場合、1つの適切なオプションは、より宣言的なアプローチを提供するfilter()を使用することです。
const items = ['a'、 'b'、 'c'、 'd'、 'e'、 'f']
const valueToRemove = 'c'
const FilteredItems = items.filter(item => item!== valueToRemove)
console.log(filteredItems)
これはES6矢印関数を使用します。従来の機能を使用して、古いブラウザをサポートできます。
const items = ['a'、 'b'、 'c'、 'd'、 'e'、 'f']
const valueToRemove = 'c'
const FilteredItems = items.filter(function(item){
アイテムを返す!== valueToRemove
})
console.log(filteredItems)
または、Babelを使用してES6コードをES5にトランスパイルして、古いブラウザーでより消化しやすくし、コードに最新のJavaScriptを記述することもできます。
複数のアイテムを削除する
単一のアイテムではなく、多くのアイテムを削除したい場合はどうなりますか?
最も簡単な解決策を見つけましょう。
インデックス別
関数を作成し、一連のアイテムを削除するだけです。
const items = ['a'、 'b'、 'c'、 'd'、 'e'、 'f']
const removeItem =(items、i)=>
items.slice(0、i-1).concat(items.slice(i、items.length))
FilteredItems = removeItem(items、3)
FilteredItems = removeItem(filteredItems、5)
//["あいうえお"]
console.log(filteredItems)
値で
コールバック関数内の包含を検索できます。
const items = ['a'、 'b'、 'c'、 'd'、 'e'、 'f']
const valuesToRemove = ['c'、 'd']
const FilteredItems = items.filter(item =>!valuesToRemove.includes(item))
// ["a"、 "b"、 "e"、 "f"]
console.log(filteredItems)
元の配列を変更しないでください
splice()(slice()と混同しないでください)は元の配列を変更するため、回避する必要があります。
(もともと私のサイトhttps://flaviocopes.com/how-to-remove-item-from-array/に投稿されました)
|
このコードをチェックしてください。それはすべての主要なブラウザで動作します。
remove_item = function(arr、value){
var b = '';
for(b in arr){
if(arr [b] === value){
arr.splice(b、1);
ブレーク;
}
}
到着を返す;
};
この関数を呼び出す
remove_item(array、value);
|
ES6&突然変異なし:(2016年10月)
const removeByIndex =(list、index)=>
[
... list.slice(0、index)、
... list.slice(index + 1)
];
output = removeByIndex([33,22,11,44]、1)// => [33,11,44]
console.log(出力)
|
lodash _.pull(配列を変更)、_。pullAt(配列を変更)、または_.without(配列を変更しない)を使用できます。
var array1 = ['a'、 'b'、 'c'、 'd']
_.pull(array1、 'c')
console.log(array1)// ['a'、 'b'、 'd']
var array2 = ['e'、 'f'、 'g'、 'h']
_.pullAt(array2、0)
console.log(array2)// ['f'、 'g'、 'h']
var array3 = ['i'、 'j'、 'k'、 'l']
var newArray = _.without(array3、 'i')// ['j'、 'k'、 'l']
console.log(array3)// ['i'、 'j'、 'k'、 'l']
|
配列から特定の要素/文字列を削除することは、ワンライナーで行うことができます。
theArray.splice(theArray.indexOf( "stringToRemoveFromArray")、1);
どこ:
theArray:特定のものを削除したい配列
stringToRemoveFromArray:削除する文字列。1は削除する要素の量です。
注意:「stringToRemoveFromArray」が配列内にない場合、これにより配列の最後の要素が削除されます。
要素を削除する前に、まず要素が配列に存在するかどうかを確認することをお勧めします。
if(theArray.indexOf( "stringToRemoveFromArray")> = 0){
theArray.splice(theArray.indexOf( "stringToRemoveFromArray")、1);
}
クライアントのコンピューターで新しいバージョンのEcmascriptにアクセスできる場合(警告、古いステーションでは機能しない場合があります):
var array = ['1'、 '2'、 '3'、 '4'、 '5'、 '6']
var newArray = array.filter((value)=> value!= '3');
ここで、「3」は配列から削除する値です。
配列は次のようになります:['1'、 '2'、 '4'、 '5'、 '6']
|
OK、たとえば以下の配列があります:
var num = [1、2、3、4、5];
そして、番号4を削除したいと思います。以下のコードを使用するだけです。
num.splice(num.indexOf(4)、1); // numは[1、2、3、5]になります;
この関数を再利用する場合は、次のようにネイティブ配列関数にアタッチされる再利用可能な関数を記述します。
Array.prototype.remove = Array.prototype.remove || function(x){
const i = this.indexOf(x);
if(i ===-1)
戻る;
this.splice(i、1); // num.remove(5)=== [1、2、3];
}
しかし、代わりに配列にいくつかの[5]がある以下の配列がある場合はどうでしょうか?
var num = [5、6、5、4、5、1、5];
それらすべてをチェックするためにループが必要ですが、より簡単で効率的な方法は組み込みのJavaScript関数を使用することなので、代わりに以下のようなフィルターを使用する関数を記述します。
const _removeValue =(arr、x)=> arr.filter(n => n!== x);
// _ removeValue([1、2、3、4、5、5、6、5]、5)// [1、2、3、4、6]を返します
また、LodashやUnderscoreなど、これを行うのに役立つサードパーティのライブラリもあります。詳細については、lodash _.pull、_。pullAt、または_.withoutを参照してください。
|
パフォーマンス
今日(2019-12-09)選択したソリューションについてmacOS v10.13.6(High Sierra)でパフォーマンステストを実施します。 delete(A)を表示しますが、配列に空のスペースが残っているため、他の方法と比較して使用しません。
結論
最速のソリューションはarray.splice(C)です(2回目の小さな配列のSafariを除く)
大きな配列の場合、array.slice + splice(H)は、FirefoxおよびSafariで最も高速な不変のソリューションです。 Array.from(B)はChromeで最速です
可変ソリューションは通常、不変よりも1.5倍から6倍高速です
Safariの小さなテーブルの場合、驚くべきことに、可変ソリューション(C)は不変ソリューション(G)よりも低速です。
詳細
テストでは、さまざまな方法で配列から中間要素を削除します。 A、Cソリューションは適切に配置されています。 B、D、E、F、G、Hソリューションは不変です。
10個の要素を持つ配列の結果
Chromeでは、array.splice(C)が最速のインプレースソリューションです。 array.filter(D)は、最速の不変ソリューションです。最も遅いのはarray.slice(F)です。ここで、マシンでテストを実行できます。
1.000.000要素の配列の結果
Chromeでは、array.splice(C)が最速のインプレースソリューションです(削除(C)も同様に高速ですが、配列に空のスロットが残っています(したがって、「完全削除」は実行されません))。 array.slice-splice(H)は、最速の不変ソリューションです。最も遅いのはarray.filter(DおよびE)です。ここで、マシンでテストを実行できます。
var a = [0、1、2、3、4、5、6、7、8、9];
var log =(letter、array)=> console.log(letter、array.join `、`);
関数A(配列){
var index = array.indexOf(5);
配列[インデックス]を削除します。
log( 'A'、配列);
}
関数B(配列){
var index = array.indexOf(5);
var arr = Array.from(array);
arr.splice(index、1)
log( 'B'、arr);
}
関数C(配列){
var index = array.indexOf(5);
array.splice(index、1);
log( 'C'、配列);
}
関数D(配列){
var arr = array.filter(item => item!== 5)
log( 'D'、arr);
}
関数E(配列){
var index = array.indexOf(5);
var arr = array.filter((item、i)=> i!== index)
log( 'E'、arr);
}
関数F(配列){
var index = array.indexOf(5);
var arr = array.slice(0、index).concat(array.slice(index + 1))
log( 'F'、arr);
}
関数G(配列){
var index = array.indexOf(5);
var arr = [... array.slice(0、index)、... array.slice(index + 1)]
log( 'G'、arr);
}
関数H(配列){
var index = array.indexOf(5);
var arr = array.slice(0);
arr.splice(index、1);
log( 'H'、arr);
}
A([... a]);
B([... a]);
C([... a]);
D([... a]);
E([... a]);
F([... a]);
G([... a]);
H([... a]);
このスニペットは、パフォーマンステストで使用されるコードのみを示しています。テスト自体は実行しません。
ブラウザの比較:Chrome v78.0.0、Safari v13.0.4、およびFirefox v71.0.0
|
私はJavaScriptにかなり慣れていないので、この機能が必要でした。私は単にこれを書いた:
関数removeFromArray(配列、アイテム、インデックス){
while((index = array.indexOf(item))> -1){
array.splice(index、1);
}
}
それから私がそれを使いたいとき:
//ダミーデータを設定します
var dumpimObj = {name: "meow"};
var dumparyArray = [dummyObj、 "item1"、 "item1"、 "item2"];
//ダミーデータを削除します
removeFromArray(dummyArray、dummyObj);
removeFromArray(dummyArray、 "item2");
出力-予想どおり。
["item1"、 "item1"]
あなたは私とは異なるニーズを持っているかもしれないので、あなたはそれを簡単に修正することができますそれらに合うように。これが誰かに役立つことを願っています。
|
配列に複雑なオブジェクトがある場合、フィルターを使用できますか?
$ .inArrayまたはarray.spliceの使用がそれほど簡単ではない状況。特に、オブジェクトが配列内でおそらく浅い場合。
例えば。 Idフィールドを持つオブジェクトがあり、そのオブジェクトを配列から削除する場合:
this.array = this.array.filter(function(element、i){
element.idを返します!== idToRemove;
});
|
ECMAScript6に基づいて回答したいと思います。次のような配列があるとします。
arr = [1,2,3,4];
2のような特別なインデックスで削除する場合は、次のコードを記述します。
arr.splice(2、1); // => arrは[1,2,4]になりました
ただし、3のような特別なアイテムを削除したいが、そのインデックスがわからない場合は、次のようにします。
arr = arr.filter(e => e!== 3); // => arrは[1,2,4]になりました
ヒント:空の配列を取得しない限り、フィルターコールバックには矢印関数を使用してください。
|
更新:この方法は、ECMAScript 2015(旧称ES6)を使用できない場合にのみ推奨されます。あなたがそれを使うことができるならば、ここの他の答えは多くのよりきちんとした実装を提供します。
ここでのこの要点は、問題を解決し、1(または指定された値)だけでなく、引数のすべての出現箇所を削除します。
Array.prototype.destroy = function(obj){
//オブジェクトが見つからず、削除された場合はnullを返します
破壊された変数= null;
for(var i = 0; i  3
x.destroy(false); // => false
バツ; // => [1、2、true、undefined]
x.destroy(true); // => true
x.destroy(undefined); // =>未定義
バツ; // => [1、2]
x.destroy(3); // => null
バツ; // => [1、2]
|
ES10アップデート
この投稿では、ECMAScript 2019(ES10)の時点で配列から要素を削除するための一般的なアプローチをまとめています。
1.一般的なケース
1.1。 .splice()を使用して値で配列要素を削除する
|インプレース:はい|
|重複を削除します:Yes(loop)、No(indexOf)|
|値/インデックス別:インデックス別|
配列から削除する値がわかっている場合は、spliceメソッドを使用できます。まず、ターゲットアイテムのインデックスを特定する必要があります。次に、インデックスを開始要素として使用し、要素を1つだけ削除します。
// 'for'ループ付き
const arr = [1、2、3、4、5、6、7、8、9、0];
for(let i = 0; i  [1、2、3、4、6、7、8、9、0]
// .indexOf()メソッドを使用
const arr = [1、2、3、4、5、6、7、8、9、0];
const i = arr.indexOf(5);
arr.splice(i、1); // => [1、2、3、4、6、7、8、9、0]
1.2。 .filter()メソッドを使用して配列要素を削除する
|インプレース:いいえ|
|重複を削除します:はい|
|値/インデックス別:値別|
フィルタリング機能を提供することにより、特定の要素を配列から除外することができます。このような関数は、配列内のすべての要素に対して呼び出されます。
const value = 3
arr = [1、2、3、4、5、3]
arr = arr.filter(item => item!== value)
console.log(arr)
// [1、2、4、5]
1.3。 Array.prototypeを拡張してArray要素を削除する
|インプレース:はい/いいえ(実装によって異なります)|
|重複を削除します:はい/いいえ(実装によって異なります)|
|値別/インデックス別:インデックス別/値別(実装によって異なります)|
配列のプロトタイプは、追加のメソッドで拡張できます。このようなメソッドは、作成されたアレイで使用できるようになります。
注:JavaScriptの標準ライブラリ(配列など)からオブジェクトのプロトタイプを拡張することは、アンチパターンと見なされる人もいます。
//インプレース、値の実装によりすべてを削除
Array.prototype.remove = function(item){
for(let i = 0; i  = ES10)
|インプレース:いいえ|
|重複を削除します:はい|
|値/インデックス別:値別|
ES10はObject.fromEntriesを導入しました。配列のようなオブジェクトから目的の配列を作成し、プロセス中に不要な要素をフィルタリングするために使用されます。
constオブジェクト= [1,2,3,4];
const valueToRemove = 3;
const arr = Object.values(Object.fromEntries(
Object.entries(object)
.filter(([key、val])=> val!== valueToRemove)
));
console.log(arr); // [1,2,4]
2.特別な場合
2.1配列の最後にある場合の要素の削除
2.1.1。配列の長さの変更
|インプレース:はい|
|重複を削除します:いいえ|
|値/インデックス別:N / A |
JavaScript配列要素は、lengthプロパティを現在の値よりも小さい値に設定することにより、配列の末尾から削除できます。インデックスが新しい長さ以上の要素はすべて削除されます。
const arr = [1、2、3、4、5、6];
arr.length = 5; //要素を削除する長さを設定します
console.log(arr); // [1、2、3、4、5]
2.1.2。 .pop()メソッドの使用
|インプレース:はい|
|重複を削除します:いいえ|
|値/インデックス別:N / A |
popメソッドは、配列の最後の要素を削除し、その要素を返し、lengthプロパティを更新します。 popメソッドは、呼び出される配列を変更します。これは、deleteを使用する場合とは異なり、最後の要素が完全に削除され、配列の長さが短縮されることを意味します。
const arr = [1、2、3、4、5、6];
arr.pop(); // 6を返します
console.log(arr); // [1、2、3、4、5]
2.2。配列の先頭にある場合は要素を削除します
|インプレース:はい|
|重複を削除します:いいえ|
|値/インデックス別:N / A |
.shift()メソッドは、JavaScript配列の最後の要素ではなく最初の要素を削除することを除けば、popメソッドとほとんど同じように機能します。要素が削除されると、残りの要素は下にシフトされます。
const arr = [1、2、3、4];
arr.shift(); // 1を返します
console.log(arr); // [2、3、4]
2.3。配列内の唯一の要素である場合は要素を削除する
|インプレース:はい|
|重複を削除します:N / A |
|値/インデックス別:N / A |
最速の手法は、配列変数を空の配列に設定することです。
arr = [1];
arr = []; //空の配列
または、長さを0に設定することにより、2.1.1の手法を使用できます。
|
アレイを変更しないでください。これは関数型プログラミングパターンに反するためです。 ECMAScript 6メソッドフィルターを使用して、データを変更する配列を参照せずに、新しい配列を作成できます。
var myArray = [1、2、3、4、5、6];
配列から5を削除したい場合は、次のように簡単に実行できます。
myArray = myArray.filter(value => value!== 5);
これにより、削除したい値のない新しい配列が得られます。したがって、結果は次のようになります。
[1、2、3、4、6]; // 5はこの配列から削除されました
さらに理解を深めるために、Array.filterのMDNドキュメントを読むことができます。
|
より現代的なECMAScript2015(旧称HarmonyまたはES 6)アプローチ。与えられた:
const items = [1、2、3、4];
const index = 2;
次に:
items.filter((x、i)=> i!== index);
降伏:
[1、2、4]
Babelとポリフィルサービスを使用して、これがブラウザ間で十分にサポートされていることを確認できます。
|
要素のインスタンスが複数ある場合は、逆方向ループを実行して、インデックスを台無しにしないようにすることができます。
var myElement = "chocolate";
var myArray = ['チョコレート'、 'ポップタルト'、 'ポップタルト'、 'ポップタルト'、 'チョコレート'、 'ポップタルト'、 'ポップタルト'、 'チョコレート'];
/ *重要なコード* /
for(var i = myArray.length-1; i> = 0; i-){
if(myArray [i] == myElement)myArray.splice(i、1);
}
console.log(myArray);
ライブデモ
|
配列に1から9があり、5を削除します。次のコードを使用します。
var numberArray = [1、2、3、4、5、6、7、8、9];
var newNumberArray = numberArray.filter(m => {
mを返す!== 5;
});
console.log( "新しい配列、5が削除されました"、newNumberArray);
複数の値が必要な場合。例:-1,7,8
var numberArray = [1、2、3、4、5、6、7、8、9];
var newNumberArray = numberArray.filter(m => {
return(m!== 1)&&(m!== 7)&&(m!== 8);
});
console.log( "新しい配列、1、7、および8が削除されました"、newNumberArray);
配列内の配列値を削除する場合。例:[3,4,5]
var numberArray = [1、2、3、4、5、6、7、8、9];
var removebleArray = [3,4,5];
var newNumberArray = numberArray.filter(m => {
!removebleArray.includes(m);を返します。
});
console.log( "新しい配列、[3,4,5]が削除されました"、newNumberArray);
サポートされているブラウザが含まれていますリンクです。
|
1
2
3
4
次
非常に活発な質問。この質問に答えるために10の評判を獲得してください。レピュテーション要件は、この質問をスパムや無回答のアクティビティから保護するのに役立ちます。
あなたが探している答えではありませんか? javascript配列でタグ付けされた他の質問を参照するか、独自の質問をしてください。