JavaScript 連想配列からオブジェクトを削除するにはどうすればいいですか? 質問する

JavaScript 連想配列からオブジェクトを削除するにはどうすればいいですか? 質問する

次のようなコードがあるとします:

var myArray = new Object();
myArray["firstname"] = "Bob";
myArray["lastname"] = "Smith";
myArray["age"] = 25;

では、「lastname」を削除したい場合はどうしたらよいでしょうか? に相当するものはありますかmyArray["lastname"].remove()?

(要素の数は重要であり、物事をすっきりさせたいので、要素を削除する必要があります。)

ベストアンサー1

JavaScript のオブジェクトは、キー (プロパティ) を値にマッピングする連想配列と考えることができます。

JavaScriptでオブジェクトからプロパティを削除するには、deleteオペレーター:

const o = { lastName: 'foo' }
o.hasOwnProperty('lastName') // true
delete o['lastName']
o.hasOwnProperty('lastName') // false

deleteがインデックスプロパティに適用される場合、Array、あなたはまばらな配列(つまり、インデックスが欠落している配列)。

のインスタンスを扱うときArray、まばらな配列を作成したくない場合(通常はそうしませんが)、次のようにします。Array#spliceまたはArray#pop

JavaScript の 演算子はメモリを直接解放しないことに注意してくださいdelete。その目的は、オブジェクトからプロパティを削除することです。もちろん、削除されるプロパティがオブジェクトへの唯一の参照を保持している場合はo、その後、o通常の方法でガベージ コレクションされます。

演算子を使用すると、deleteJavaScriptエンジンの能力に影響を与える可能性があります。最適化する コード

おすすめ記事