In JavaScript, data types are used to classify a specific type of data, determining the values that can be assigned to that type and the operations that can be performed on it.
While JavaScript automatically converts many values due to type coercion, to achieve the desired results it is often best to manually convert values between types.
This tutorial will guide you in converting JavaScript's basic data types, including numbers, strings, and Boolean values.
Implicit conversion
As a programming language, JavaScript has a high tolerance for unexpected values. Therefore, JavaScript will try to convert unexpected values instead of rejecting them outright. This implicit conversion is called type coercion.
Some methods automatically convert values in order to use them. The alert() method accepts a string as parameter, but it will automatically convert other types to string. Therefore, we can pass a numeric value to the method:
alert(8.5);
If we run the above line of code, the browser will return a pop-up warning dialog box showing the 8.5 value, but it will be converted to a string .
When working with strings that can be evaluated as numbers via mathematical operators, you will find that JavaScript is able to handle these values by implicitly converting the string to a number, as shown in the example below.
// Subtraction "15" - "10";
Output: 5
// Modulo "15" % "10";
Output: 5
However, not every operator works as expected. There are obvious problems with the operator since it can represent addition or string concatenation.
// When working with strings, + stands for concatenation "2" + "3";
Output: "23"
Since the operator is multipurpose, the string values 2 and 3 are concatenated into the string value 23, despite being numeric strings, rather than adding together to become the number 5.
Because ambiguities can exist and sometimes lead to unexpected results, it is usually best to explicitly convert as many data types as possible in your code. This will help manage input from users and handle errors.
Convert a value to a string
You can explicitly convert a value to a string by calling String() or N.ToString().
Using the String() function, let us convert a Boolean value to a string by passing the value true to the parameter of String().
String(true);
When we do this, the string literal "true" will be returned.
Output: "true"
Alternatively, we can pass a number to the function.
String(49);
will return the string literal of the number.
Output: "49"
Let us use the String() function with a variable. We will assign a numeric value to the variable odyssey and then use the typeof operator to check the type.
let odyssey = 2001; console.log(typeof odyssey);
Output: number
At this time, the variable odyssey is assigned the value of 2001, and we have confirmed that it is a number.
Now, let's reassign odyssey to its string equivalent and then use typeof to confirm that we have successfully converted the variable's value from a number to a string.
odyssey = String(odyssey); // "2001" console.log(typeof odyssey);
Output: string
In the above example, we have confirmed that odyssey is reassigned to a string value after data type conversion.
We can use n.toString() in a similar way. We can replace n with a variable:
let blows = 400; blows.toString();
The variable blow will be returned as a string.
Output: "400"
Alternatively, we can put the value inside parentheses instead of n.toString() variable:
(1776).toString(); // returns "1776" (false).toString(); // returns "false" (100 + 200).toString(); // returns "300"
Pass Using String() or n.toString(), we are able to explicitly convert a Boolean or numeric data type value to a String value to ensure that the code behaves as we expect.
Convert value to number
When converting value to numeric data type, we will use number() method. First, we'll convert a numeric text string to a number, but we can also convert Boolean values.
We can pass a number string to the number() method:
Number("1984");
The string will be converted to a number and will no longer be enclosed in quotes .
Output: 1984
We can also assign a string to a variable and then convert it.
let dalmatians = "101"; Number(dalmatians);
Output: 101
The string literal "101" is converted to the number 101 via its variables.
Blank strings or empty strings will be converted to 0.
Number(" "); // returns 0 Number(""); // returns 0
Note that non-numeric strings will be converted to NaN, which means non-numeric. This includes numbers separated by spaces.
Number("twelve"); // returns NaN Number("20,000"); // returns NaN Number("2 3"); // returns NaN Number("11-11-11"); // returns NaN
For Boolean data type, the value of false is 0 and the value of true is 1.
Number(false); // returns 0 Number(true); // returns 1
The function of the method is to convert non-numeric data types into numbers.
Convert a value to a Boolean value
To convert a number or string to a Boolean value, you can use the Boolean() method. This is useful for determining whether the user entered data into a text field, for example.
Any value that is interpreted as null, such as the number 0, the empty string or undefined value, NaN, or null, is converted to false.
Boolean(0); // returns false Boolean(""); // returns false Boolean(undefined); // returns false Boolean(NaN); // returns false Boolean(null); // returns false
Other values will be converted to true, including string literals consisting of spaces.
Boolean(2000); // returns true Boolean(" "); // returns true Boolean("Maniacs"); // returns true
Note that "0" as a string literal will convert to true since it is a non-empty string value:
Boolean("0"); // returns true
将数字和字符串转换为布尔值可以允许我们在二进制术语中计算数据,并且可以用于程序中的控制流。
相关免费学习推荐:js视频教程
The above is the detailed content of Understanding data type conversion in JavaScript. For more information, please follow other related articles on the PHP Chinese website!

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

Zend Studio 13.0.1
Powerful PHP integrated development environment

Atom editor mac version download
The most popular open source editor

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.
