書籍のアウトプット
#計算されたプロパティ名
現在使用している状態マネージャを別のライブラリに対応させる必要があるとする。
このライブラリは状態に格納する必要があるいくつかの値を渡す。
問題はこのライブラリが渡すキーとペアが状態マネージャのメソッドに渡せるオブジェクトではなく、配列形式であるということ
そこで状態マネージャをうまくライブラリに渡すために仲介関数を作成する。
function setValue(name, value) {
const changes = {}
changes[name] = value
stateManager.update(changes);
}
const [name, value] = otherLibrary.operate()
setValue(name, value)
ポイントはsetValue関数でプロパティを定義する前にからのオブジェクトを作成しなくていけないこと。
これはプロパティ名は動的に設定されるため。
{name:value}というものを定義していたとすれば、プロパティ名はname変数に含まれる値ではなく、"name"という値になっていた。
つまりchanges.name=value
とおなじこと
"changes[name]=value"とすることでnameの値を使用する事ができる。