回答編集履歴

1

一番下の若干の間違いを訂正し、追加のコードを記述。

2022/04/28 04:31

投稿

JK_Taro
JK_Taro

スコア20

test CHANGED
@@ -74,7 +74,22 @@
74
74
  また、スプレッド演算子とスライスを組み合わせれば、配列内の所望のオブジェクトの間に別のオブジェクトを入れたり、特定の位置のオブジェクトだけを消したりもできる。
75
75
  例えば、既にある配列の2番目(index1)に新たオブジェクトを挿入する場合。
76
76
  ```JavaScript
77
- [...dataArray.slice(0, 1),
77
+ {
78
- anotherObject,
78
+ ...prvData,
79
- ...dataArray.slice(1) ];
79
+ [documentId] : [...prvData[documentId].slice(0, 1), anotherObject, ...prvData[documentId].slice(1) ];
80
+ }
80
81
  ```
82
+ また、オブジェクト内に特定のキーがあるかは以下の方法も使えます
83
+ ```JavaScript
84
+ Object.keys(objData).includes(docmentId)
85
+ // 上は objData[documentId] !== undefined と同じ
86
+
87
+ //下記のようにラップしたり
88
+ function isObjKeyExist(stateData, key) {
89
+ if (Object.keys(stateData).includes(key)) {
90
+ return true;
91
+ } else {
92
+ return false;
93
+ }
94
+ }
95
+ ```