When you instantiate a player with `usePlayer
` or `new Player()
` from javascript, you are actually either creating a new `Player
` instance on the native side (see [SDKs docs](🔗) for more info), or referencing an existing one.
This means that `Player
` instances with the same `nativeId
` in different parts of the code are referencing the same in-memory instance internally.
## Example
Both components in the example below are referencing the same native `Player
`, indexed as `my-player
`. And even though each `<PlayerView />
` creates a different View internally, the underlying Player instance remains the same. It just gets attached to a different view.