私は不変の状態オブジェクトを変更するために純粋な関数を探しています。パラメータとして与えられた元の状態は元のままでなければなりません。これは、Reduxのようなフレームワークを使って作業していて、javacriptのimmutableオブジェクトを扱うのをはるかに簡単にする場合に特に便利です。特に、Babelを使用したオブジェクトスプレッド演算子での作業はすでに可能です。 、拡散演算子と非構造化演算子を使って不変オブジェクトを修正する最短の方法は何ですか
function updateState(state, item) {
newState = {...state};
newState[item.id] = item;
return newState;
}
function deleteProperty(state, id) {
var newState = {...state};
delete newState[id];
return newState;
}
それがオン状態
尋ねた後、数秒で答えますか? – ColinE
質問を投稿する前に解決策を見つけたので、質問フォームの下にあるフィールドを使用して回答しました。グーグルがそれほど難しいので、私はこれを皆のためにここに入れました。 – Tarion
しかし、実際には、プロパティを削除することも面白い質問です。プロパティを未定義に設定するとキーが削除されず、オブジェクト定義内で削除が機能しないように見えます; – Tarion