Gamepad: index property

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2017.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The Gamepad.index property of the Gamepad interface returns an integer that is auto-incremented to be unique for each device currently connected to the system.

This can be used to distinguish multiple controllers; a gamepad that is disconnected and reconnected will retain the same index.

Value

Examples

js
window.addEventListener("gamepadconnected", () => {
  const gp = navigator.getGamepads()[0];
  gamepadInfo.textContent = `Gamepad connected at index ${gp.index}: ${gp.id}.`;
});

Specifications

Specification
Gamepad
# dom-gamepad-index

Browser compatibility

BCD tables only load in the browser

See also