Skip to content

[v1] インスタンスを比較するための ID を全てのキャラクターに持たせる #68

@teramotodaiki

Description

@teramotodaiki

v1 から取り入れたい仕組み
今はインスタンスの比較に比較演算子 === を用いることが出来る(実際に内部実装でも使っている)
この実装方法は Proxy と相性が悪い。Proxy は比較演算子をトラップできない ため、違うインスタンスであると思われてしまう
最初に一度だけ Proxy を作って、その後同じ参照を使い回せば上手くいくが、例えば「それぞれのトリガーに対して別々の Proxy を生成することでトラッキングする」などの用途には使えない

Proxy による参照のトラッキングができればなにかと便利なので、インスタンスの比較は一意な比較識別子(string でも object でも symbol でも) を使って charaA.id === charaB.id のように比較させたい

(この識別子を plain object にすれば WeakSet や WeakMap による参照保持も今まで通り可能であろう。テクニックとして書き残しておく)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions