Skip to Content
Speaking JavaScript
book

Speaking JavaScript

by Axel Rauschmayer
February 2014
Beginner to intermediate content levelBeginner to intermediate
460 pages
8h 32m
English
O'Reilly Media, Inc.
Content preview from Speaking JavaScript

Chapter 11. Numbers

JavaScript has a single type for all numbers: it treats all of them as floating-point numbers. However, the dot is not displayed if there are no digits after the decimal point:

> 5.000
5

Internally, most JavaScript engines optimize and do distinguish between floating-point numbers and integers (details: Integers in JavaScript). But that is something that programmers don’t see.

JavaScript numbers are double (64-bit) values, based on the IEEE Standard for Floating-Point Arithmetic (IEEE 754). That standard is used by many programming languages.

Number Literals

A number literal can be an integer, floating point, or (integer) hexadecimal:

> 35  // integer
35
> 3.141  // floating point
3.141
> 0xFF  // hexadecimal
255

Exponent

An exponent, eX, is an abbreviation for “multiply with 10X”:

> 5e2
500
> 5e-2
0.05
> 0.5e2
50

Invoking Methods on Literals

With number literals, the dot for accessing a property must be distinguished from the decimal dot. This leaves you with the following options if you want to invoke toString() on the number literal 123:

123..toString()
123 .toString()  // space before the dot
123.0.toString()
(123).toString()

Converting to Number

Values are converted to numbers as follows:

Value Result

undefined

NaN

null

0

A boolean

false0

true1

A number

Same as input (nothing to convert)

A string

Parse the number in the string (ignoring leading and trailing whitespace); the empty string is converted to 0. Example: '3.141'3.141

An object

Call ToPrimitive(value, Number) (see ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

The Joy of JavaScript

The Joy of JavaScript

Luis Atencio
Secrets of the JavaScript Ninja, Second Edition

Secrets of the JavaScript Ninja, Second Edition

Bear Bibeault, Josip Maras, John Resig

Publisher Resources

ISBN: 9781449365028Errata