Home  >  Article  >  Web Front-end  >  Detailed explanation of various ways of converting numbers into strings in js

Detailed explanation of various ways of converting numbers into strings in js

韦小宝
韦小宝Original
2018-03-07 13:42:351380browse

The value obtained when js reads text box or other form data is of string type. When we need to use other data types, we must use dataType conversion, today we will talk about various methods of converting strings to numbers in js!

The value obtained when js reads a text box or other form data is of string type, such as two text boxes a and b. Assume that the value of a is 11 and the value of b is 9, then a.value should be smaller than b.value, because they are both in the form of strings. I looked for articles on the Internet about converting js strings to numbers. This is a more comprehensive method. There are mainly three types of

conversion functions, forced type conversion, and weak type conversion using js variables.

1. Conversion function:

js provides two conversion functions: parseInt() and parseFloat(). The former converts the value into an integer, and the latter converts the value into a floating point number. These two functions can only be executed correctly if these methods are called on the String type; NaN (Not a Number) is returned for other types.

Some examples are as follows:

parseInt("1234blue"); //returns 1234
parseInt("0xA"); //returns 10
parseInt("22.5"); //returns 22
parseInt("blue"); //returns NaN
The parseInt() method also has a base mode, which can convert binary, octal, hexadecimal or other strings of any base into integers. . The base is specified by the second parameter of the parseInt() method, for example:

parseInt("AF", 16); //returns 175
parseInt("10", 2); //returns 2
parseInt("10", 8); //returns 8
parseInt("10", 10); //returns 10

Assuming that decimal numbers include leading 0s, it is best to use base 10 so that you do not accidentally get octal numbers value. For example:

parseInt("010"); //returns 8
parseInt("010", 8); //returns 8
parseInt("010", 10); //returns 10

The parseFloat() method is similar to the parseInt() method.

Another difference in using the parseFloat() method is that the string must represent a floating point number in decimal form, and parseFloat() has no base mode.

The following is a demonstration example of using the parseFloat() method:

parseFloat("1234blue"); //returns 1234.0
parseFloat("0xA"); //returns NaN
parseFloat("22.5"); //returns 22.5
parseFloat("22.34.5"); //returns 22.34
parseFloat("0908"); //returns 908
parseFloat("blue"); //returns NaN

2. Forced type conversion

Also Use type casting to handle converting the type of a value. Use casts to access a specific value even if it has another type. The three types of forced type conversions available in ECMAScript are as follows:

1. Boolean(value)——Convert the given value into Boolean type;

2.Number(value)—— Convert the given value into a number (can be an integer or a floating point number);
3. String(value) - Convert the given value into a string.

Using one of these three functions to convert a value will create a new value that stores the value directly converted from the original value. This can have unintended consequences.
The Boolean() function returns true when the value to be converted is a string, non-zero number, or object with at least one character (this will be discussed in the next section). Assuming the value is an empty string, the number 0, undefined or null, it will return false. You can test Boolean type conversion with the following code snippet.

Boolean(""); //false – empty string
Boolean("hi"); //true – non-empty string
Boolean(100); //true – non-zero number
Boolean(null); //false - null
Boolean(0); //false - zero
Boolean(new Object()); //true – object

The coercion of Number() is similar to the parseInt() and parseFloat() methods, except that it converts the entire value instead of part of the value. The example is as follows:

//用  法  // 结  果
Number(false) //0
Number(true) //1
Number(undefined) //NaN
Number(null) //0
Number( "5.5 ") //5.5
Number( "56 ") //56
Number( "5.6.7 ") //NaN
Number(new Object()) //NaN
Number(100) //100

The last forced type conversion method, String(), is the simplest, the example is as follows:

var s1 = String(null); //"null"
var oNull = null;
var s2 = oNull.toString(); //won't work, causes an error

3. Use js variables Weak type conversion

# Give a small example and it will be clear at a glance.

<script>
var str= &#39;012.345 &#39;;
var x = str-0;
x = x*1;
</script>
The above example takes advantage of the weak type characteristics of js and only performs arithmetic operations to achieve type conversion from string to number. However, this method is not recommended

Recommended related articles:

How to convert Js strings to hexadecimal numbers

The above is the detailed content of Detailed explanation of various ways of converting numbers into strings in js. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn