Sometimes it is necessary to convert values from one type to another. A common example is when a program receives input from a user or a file. In this situation, numeric data may be passed to the program as strings.
String will (attempt to) convert their arguments into types
string, respectively. We call these type conversion functions.
Number function can take a string and turn it into an integer. Let us see this in action:
console.log(Number("2345")); console.log(typeof Number("2345")); console.log(Number(17));
2345 number 17
What happens if we attempt to convert a string to a number, and the string doesn’t directly represent a number?
This example shows that a string has to be a syntactically legal number for conversion to go as expected. Examples of such strings are
"-2.5". If the value cannot be cleanly converted to a number, then
NaN will be returned, which stands for “not a number.”
NaN and other special values in a later chapter.
The type conversion function
String turns its argument into a string. Remember that when we print a string, the quotes may be removed. However, if we print the type, we can see that it is definitely
console.log(String(17)); console.log(String(123.45)); console.log(typeof String(123.45));
17 123.45 string
Check Your Understanding
Which of the following strings result in
NaN when passed to
Number? (Feel free to try running each of the conversions.)