Number.EPSILON

The Number.EPSILON property represents the difference between 1 and the smallest floating point number greater than 1.

You do not have to create a Number object to access this static property (use Number.EPSILON).

Property attributes of Number.EPSILON
Writable no
Enumerable no
Configurable no

Description

The EPSILON property has a value of approximately 2.2204460492503130808472633361816E-16, or 2-52.

Polyfill

if (Number.EPSILON === undefined) {
    Number.EPSILON = Math.pow(2, -52);
}

Examples

Testing equality

x = 0.2;
y = 0.3;
z = 0.1;
equal = (Math.abs(x - y + z) < Number.EPSILON);

Specifications

Specification
ECMAScript (ECMA-262)
The definition of 'Number.EPSILON' in that specification.

Browser compatibility

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
EPSILONChrome Full support 34Edge Full support 12Firefox Full support 25IE No support NoOpera Full support 21Safari Full support 9WebView Android Full support ≤37Chrome Android Full support 34Firefox Android Full support 25Opera Android Full support 21Safari iOS Full support 9Samsung Internet Android Full support 2.0nodejs Full support 0.12

Legend

Full support  
Full support
No support  
No support

See also

  • The Number object it belongs to.