1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【javascript】計算されたプロパティ名

Posted at

書籍のアウトプット

#計算されたプロパティ名

現在使用している状態マネージャを別のライブラリに対応させる必要があるとする。

このライブラリは状態に格納する必要があるいくつかの値を渡す。
問題はこのライブラリが渡すキーとペアが状態マネージャのメソッドに渡せるオブジェクトではなく、配列形式であるということ

そこで状態マネージャをうまくライブラリに渡すために仲介関数を作成する。

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の値を使用する事ができる。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?