回答編集履歴
1
一番下の若干の間違いを訂正し、追加のコードを記述。
test
CHANGED
@@ -74,7 +74,22 @@
|
|
74
74
|
また、スプレッド演算子とスライスを組み合わせれば、配列内の所望のオブジェクトの間に別のオブジェクトを入れたり、特定の位置のオブジェクトだけを消したりもできる。
|
75
75
|
例えば、既にある配列の2番目(index1)に新たオブジェクトを挿入する場合。
|
76
76
|
```JavaScript
|
77
|
-
|
77
|
+
{
|
78
|
-
|
78
|
+
...prvData,
|
79
|
-
...dat
|
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
|
+
```
|