[JavaScript]Objectの連想配列の要素をクリア(全削除)するには?

JavaScript

どうも、ちょげ(@chogetarou)です。

Objectの連想配列の要素をクリアして全削除する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

Objectの連想配列の要素をクリアして全削除する方法は、2つあります。

forループ

1つは、forループを使う方法です。

まず、for (const key in obj) {}のように、for..inでObjectの連想配列をループします。

forループの処理で、連想配列のhasOwnProperty()の返り値がtrueの要素で条件分岐します。

そして、hasOwnProperty()の戻り値がtrueの要素を、deleteで削除します。

for (const key in dictionary) {
    if (dictionary.hasOwnProperty(key)) {
        delete dictionary[key];
    }
}

上記のforループは、ループしたObjectの連想配列の要素をクリアします。

使用例

const numbers = { "one": 1, "two": 2, "three": 3, "four": 4, "five": 5 };

for (const key in numbers) {
    if (numbers.hasOwnProperty(key)) {
        delete numbers[key];
    }
}

console.log(numbers)
出力:
{}

{}

もう1つは、{}を使う方法です。

具体的な方法としては、Objectの連想配列に{}を代入します。

dictionary = {};

上記の代入で、左辺のObjectの連想配列はクリアされます。

使用例

var numbers = { "one": 1, "two": 2, "three": 3, "four": 4, "five": 5 };

numbers = {};

console.log(numbers);
出力:
{}
スポンサーリンク

まとめ

Objectの連想配列をクリアして全削除する方法は、次の2つです。

  • forループを使う方法
  • {}を使う方法
    dictionary = {};

コメント

タイトルとURLをコピーしました