ループを持つfor of
ループがあり、これはNeo4Jデータベースから結果を得ます。 Object.assign
を使用して、結果オブジェクトを取得し、そのオブジェクトから新しいオブジェクトにプロパティを割り当てます。私の理解はこれが不変であるということです。オブジェクトを配列に追加するときのforループの不変性
次に、返された到達結果の配列に新しい結果オブジェクトを追加します。
ループの外側に空の配列を宣言し、Array.concat
を使用して繰り返しごとに新しい配列を作成できます。もう一つの選択肢は、Array.pushを使うことです。私は配列にプッシュするか、変数を上書きするため、これらのどちらも不変ではありません。
すべてのオブジェクトの結果配列で終わる方法はありますか?それは不変ですか?
let results = []
for (const row of argsArray) {
for (const key in row) {
const neo4jPropInUse = await neo4j.session(null, cypher.ngp(key, row[key]))
if (neo4jPropInUse.length !== 0) {
console.log('IN USE DETECTED')
const thingResult = Object.assign({}, {
[thingSerialNumber]: neo4jPropInUse[0].get(`RESULT`).properties[thingSerialNumber],
key: key
})
results = results.concat([thingResult])
}
}
}
次いで '.freeze()'ラッパー・オブジェクトラッパー・オブジェクトのプロパティとして配列をカプセル化? – cowbert