Home > Web Front-end > JS Tutorial > body text

Introduction to three methods of converting strings into numbers in JavaScript

黄舟
Release: 2017-12-06 09:53:09
Original
2758 people have browsed it

In our daily development process, no matter what language we are developing, we will encounter the need to convert strings into numbers. I believe many friends know many ways to achieve this, so we Today I will give you a detailed introduction to the three methods of JavaScript to convert strings into numbers!

The value obtained when js reads a text box or other form data is of string type, for example, two text boxes a and b. If 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 found articles on converting js strings to numbers on the Internet. This is a relatively complete method. There are three main methods

Conversion function, forced

type conversion

, use js variable weak type conversion. 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. Only by calling these methods on the String type can these two functions run correctly; for other types, NaN (Not a Number) is returned. Some examples are as follows:

The code is as follows:

parseInt("1234blue"); //returns 1234
parseInt("0xA"); //returns 10
parseInt("22.5"); //returns 22
parseInt("blue"); //returns NaN
Copy after login

The parseInt() method also has a base mode, which can convert binary, octal, hexadecimal or any other base Convert the string to an integer. The base is specified by the second parameter of the parseInt() method. The example is as follows:

The code is as follows:

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

If the decimal number contains leading 0, then it is best to use base 10, so that Don't accidentally get octal values. For example:

The code is as follows:

parseInt("010"); //returns 8
parseInt("010", 8); //returns 8
parseInt("010", 10); //returns 10
Copy after login

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 an example of using the parseFloat() method:

The code is as follows:

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
Copy after login

2. Forced type conversion

You can also use forced type conversion ( type casting) handles converting the type of a value. Use a cast to access a specific value, even if it is of another type.

The three forced type conversions available in ECMAScript are as follows:

Boolean(value) - Convert the given value into Boolean type;
Number(value) - Convert the given value into a number (Can be an integer or floating point number);
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 of at least one character, a non-zero number, or an
object
(this is discussed in the next section). If the value is an empty string, the number 0, undefined, or null, it returns false. You can use the following code snippet to test the forced type conversion of Boolean.

The code is as follows:

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
Copy after login

The forced type conversion 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:

The code is as follows:

Usage result

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
Copy after login

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

The code is as follows:

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

3. Use weak type conversion of js variables

Give a small example, you will understand it at a glance.

The code is as follows:

<script>
var str= &#39;012.345 &#39;;
var x = str-0;
x = x*1;
</script>
Copy after login

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.

Summary: This article introduces to you in detail three methods of converting strings to numbers in JavaScript through code examples. They are all different. You can choose the one that suits you according to your own needs. I hope it will be helpful to your work!

Related recommendations:

Implementation methods for converting js strings into numbers and numbers into strings

JavaScript Advanced (4) Convert js string to number

PHP Statistics Chinese Characters Length of string Convert string to number

The above is the detailed content of Introduction to three methods of converting strings into numbers in JavaScript. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template