Преобразования типов JavaScript - httpdoc.ru

Преобразования типов JavaScript

Преобразование типов JavaScript может автоматически преобразовывать значения из одного типа данных в другой. Всякий раз, когда он пытается работать с «неправильным» типом данных, он пытается преобразовать значение в «правильный» тип.

Посмотрите на приведенный ниже пример, чтобы понять разные результаты выполнения операций с разными типами данных.

Пример
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title> JavaScript Automatic Type Conversion </title> 
</head> 
<body>
 <script>
  document.write("3" - 2);  
  document.write("<br>");
    
  document.write("3" + 2);  
  document.write("<br>");
    
  document.write(3 + "2");  
  document.write("<br>");
    
  document.write("3" * "2");
  document.write("<br>");
    
  document.write("10" / "2"); 
  document.write("<br>");
    
  document.write(1 + true);  
  document.write("<br>");
    
  document.write(1 + false);  
  document.write("<br>");
    
  document.write(1 + undefined);  
  document.write("<br>");
    
  document.write(3 + null);  
  document.write("<br>");
    
  document.write("3" + null);  
  document.write("<br>");
    
  document.write(true + null);  
  document.write("<br>");
    
  document.write(true + undefined);  
  
 </script>
</body>
</html>

Выход

JavaScript Automatic Type Conversion Examples 1
32
32
6
5
2
1
NaN
3
3null
1
NaN

Преобразование по функциям

Преобразовать значение в число

Number() Функция может изменить строку в число. Он используется, когда мы ожидаем ввода числа при вводе текста. Строка типа «57» будет преобразована в 57. Если есть пустая строка, она будет преобразована в 0, а все остальное, например «23hg», «Ansh» и т. Д., Будет преобразовано в NaN (не число).

Пример
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title> JavaScript Convert a Numeric String to Number</title>
</head>
<body>
  <script>
   var str = "123";
   document.write(typeof str); // Outputs: string
   document.write("<br>");
    
   var num = Number(str); // Becomes a number 123
   document.write(typeof num); // // Outputs: number
  </script>
</body>
</html>

Выход

JavaScript Convert a Numeric String to Number
номер строки

Оператор Unary +

Унарный оператор + также можно использовать для преобразования переменной в число. То же, что и выше, если переменная не может быть преобразована, ее тип будет преобразован в NaN.


Преобразование чисел в строку

String() используется для преобразования чисел в строку. Есть еще один метод toString() , который также можно использовать для преобразования чисел в строку.

Логическое значение в строку

Те же методы String() и toString() методы также можно использовать для изменения типа логических значений на String.

Ниже приведен пример, в котором логическое значение преобразуется в строку. Вы можете изменить функции на toString() в редакторе Try-it, чтобы убедиться, что обе функции работают одинаково.

Пример
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title> JavaScript Convert a Value to String </title>
</head>
<body>
    <script>
    var bool = true;
    document.write(typeof bool); // Prints: boolean
    document.write("<br>");
    
    var str = String(bool); // Becomes a string "true"
    document.write(typeof str); // Prints: string
    </script>
</body>
</html>

Выход

JavaScript Convert a Value to String логическая
строка

Дата в строку

String() И toString() методы могут быть использованы для преобразования дат в строки тоже.