Math.atan()

You’re reading the English version of this content since no translation exists yet for this locale. Help us translate this article!

The Math.atan() function returns the arctangent (in radians) of a number, that is

Math.atan(x)=arctan(x)= the unique y[-π2;π2]such thattan(y)=x\mathtt{\operatorname{Math.atan}(x)} = \arctan(x) = \text{ the unique } \; y \in \left[-\frac{\pi}{2}; \frac{\pi}{2}\right] \, \text{such that} \; \tan(y) = x

Syntax

Math.atan(x)

Parameters

x
A number.

Return value

The arctangent (in radians) of the given number.

Description

The Math.atan() method returns a numeric value between -π2-\frac{\pi}{2} and π2\frac{\pi}{2} radians.

Because atan() is a static method of Math, you always use it as Math.atan(), rather than as a method of a Math object you created (Math is not a constructor).

Examples

Using Math.atan()

Math.atan(1);   // 0.7853981633974483
Math.atan(0);   // 0
Math.atan(-0);  // -0

Math.atan(Infinity);   //  1.5707963267948966
Math.atan(-Infinity);  // -1.5707963267948966

// The angle that the line [(0,0);(x,y)] forms with the x-axis in a Cartesian coordinate system
Math.atan(y / x);

Note that you may want to avoid using ±Infinity for stylistic reasons. In this case, Math.atan2() with 0 as the second argument may be a better solution.

Specifications

Specification Status Comment
ECMAScript Latest Draft (ECMA-262)
The definition of 'Math.atan' in that specification.
Draft  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Math.atan' in that specification.
Standard  
ECMAScript 5.1 (ECMA-262)
The definition of 'Math.atan' in that specification.
Standard  
ECMAScript 1st Edition (ECMA-262) Standard Initial definition. Implemented in JavaScript 1.0.

Browser compatibility

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
atanChrome Full support YesEdge Full support 12Firefox Full support 1IE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yesnodejs Full support Yes

Legend

Full support  
Full support

See also