
こんなオブジェクトがあったとする。
const genericObject = {
key1: "",
key2: "",
key3: "",
key4: "",
// ... その他のキー
};
フォームなどで送信後にこいつの中身を1個ずつ空に戻すのはナンセンス
genericObject.key1 = “”;genericObject.key2 = “”;〜
みたいな。
ジャンプできる目次
リセット用の関数を作ろう
function resetObject(obj) {
Object.keys(obj).forEach(key => {
obj[key] = "";
});
}
理屈
リセット用関数に登場したObject.keys()というJavaScript
の関数は、指定したオブジェクトのすべてのプロパティの名前(キー)を配列として返します。
Object.keys(obj)
:Object.keys()
は、指定したオブジェクトのすべてのプロパティの名前(キー)を配列として返します。- この場合、
obj
のすべてのキー(key1
,key2
,key3
, など)を配列として取得します。
forEach(key => { ... })
:forEach
は配列の各要素に対して、指定した関数を実行します。- ここでは、
obj
の各キーに対して、指定した関数(key => { ... }
)を実行します。
obj[key] = "";
:- 関数内で、各キーの値を空文字列(
""
)にリセットしています。
- 関数内で、各キーの値を空文字列(
要するに、この関数は与えられたオブジェクトobj
のすべてのプロパティを空文字列にリセットするためのものです。genericObject
のような任意のオブジェクトをリセットするのに使用できます。
使用方法
resetObject(genericObject);
これで、genericObject
のすべてのキーの値は空文字列になります。
この方法で、任意のオブジェクトを簡単にリセットすることができます。