[解決済み] JavaScript の連想配列からオブジェクトを削除するにはどうすればよいですか?
2022-03-15 09:28:23
質問
次のようなコードがあるとします。
var myArray = new Object();
myArray["firstname"] = "Bob";
myArray["lastname"] = "Smith";
myArray["age"] = 25;
さて、もし私が "lastname" を削除したいとしたら......何か同等のものがあるのでしょうか?
myArray["lastname"].remove()
?
(要素の数は重要で、すっきりさせたいので、要素は消してほしい)
どのように解決するのですか?
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
.
ただし
delete
演算子は直接メモリを解放するものではありません。その目的は、オブジェクトからプロパティを削除することです。もちろん、削除されるプロパティがオブジェクトに唯一残っている参照を保持している場合、そのオブジェクトの
o
では
o
は、その後、通常の方法でガベージコレクションされます。
関連
-
vueはopenlayersを使用してスカイマップとガオードマップをロードする
-
Vueでルートネスティングを実装する例
-
[解決済み】SyntaxError: JSONの位置1に予期しないトークンoがある。
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] あるJavaScriptファイルを他のJavaScriptファイルにインクルードするにはどうすればよいですか?
-
[解決済み] JavaScript で配列に値が含まれているかどうかを確認するにはどうすればよいですか?
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み】オブジェクトの配列を文字列のプロパティ値でソートする
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
vue for 登録ページ効果 vue for sms 認証コードログイン
-
JavaScriptの配列共通メソッド解説
-
Vueのフィルタの説明
-
[解決済み】最大呼び出しスタックサイズ超過エラー
-
[解決済み】SyntaxError: JSONの位置1に予期しないトークンoがある。
-
[解決済み】TypeError: Router.use() はミドルウェアの関数を要求しているが、Object を取得した。
-
[解決済み】React Nativeアプリをターミナルから実行するとエラーが発生する(iOS)
-
[解決済み】エラー。Ionic使用中にモジュール '../lib/utils/unsupported.js' が見つかりませんでした。
-
[解決済み] Javascriptを使用してHTML要素を削除するには?
-
Uncaught TypeError: null のプロパティ 'offsetHeight' を読み取れませんでした。