Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
mohamedkhallouq
GitHub Repository: mohamedkhallouq/content
Path: blob/main/files/en-us/web/api/accelerometer/index.md
6519 views
---
title: Accelerometer slug: Web/API/Accelerometer page-type: web-api-interface status: - experimental browser-compat: api.Accelerometer
---

{{APIRef("Sensor API")}}{{SeeCompatTable}}

The Accelerometer interface of the Sensor APIs provides on each reading the acceleration applied to the device along all three axes.

To use this sensor, the user must grant permission to the 'accelerometer', device sensor through the Permissions API.

This feature may be blocked by a Permissions Policy set on your server.

{{InheritanceDiagram}}

Constructor

  • {{domxref("Accelerometer.Accelerometer()", "Accelerometer()")}} {{Experimental_Inline}}

    • : Creates a new Accelerometer object.

Instance properties

In addition to the properties listed below, Accelerometer inherits properties from its parent interfaces, {{domxref("Sensor")}} and {{domxref("EventTarget")}}.

  • {{domxref('Accelerometer.x')}} {{ReadOnlyInline}} {{Experimental_Inline}}

    • : Returns a double containing the acceleration of the device along the device's x axis.

  • {{domxref('Accelerometer.y')}} {{ReadOnlyInline}} {{Experimental_Inline}}

    • : Returns a double containing the acceleration of the device along the device's y axis.

  • {{domxref('Accelerometer.z')}} {{ReadOnlyInline}} {{Experimental_Inline}}

    • : Returns a double containing the acceleration of the device along the device's z axis.

Instance methods

Accelerometer doesn't have own methods. However, it inherits methods from its parent interfaces, {{domxref("Sensor")}} and {{domxref("EventTarget")}}.

Events

Accelerometer doesn't have own events. However, it inherits events from its parent interface, {{domxref('Sensor')}}.

Example

Acceleration is typically read in the {{domxref('Sensor.reading_event', 'reading')}} event callback. In the example below this occurs sixty times a second.

const acl = new Accelerometer({ frequency: 60 }); acl.addEventListener("reading", () => { console.log(`Acceleration along the X-axis ${acl.x}`); console.log(`Acceleration along the Y-axis ${acl.y}`); console.log(`Acceleration along the Z-axis ${acl.z}`); }); acl.start();

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}