Samouczek JS

JS DOM Wprowadzenie do JS JS Dokąd Wyjście JS Oświadczenia JS Składnia JS Komentarze JS Zmienne JS JS Let JS Const Operatorzy JS Arytmetyka JS Zadanie JS Typy danych JS Funkcje JS Obiekty JS Wydarzenia JS JS Strings Metody ciągów JS Wyszukiwanie ciągów JS Szablony JS String Numery JS Metody liczbowe JS Tablice JS Metody tablic JS Sortowanie tablic JS Iteracja tablicy JS JS Array Const JS Daty Formaty daty JS JS Data Pobierz metody Metody ustawiania daty JS Matematyka JS JS losowo JS Booleans Porównania JS Warunki JS Przełącznik JS Pętla JS dla Pętla JS dla In Pętla JS dla Of Pętla JS, podczas gdy Przerwa JS Iterable JS Zestawy JS Mapy JS Typ JS Konwersja typu JS JS Bitwise JS RegExp Błędy JS Zakres JS JS Podnoszenie Tryb ścisły JS JS to słowo kluczowe Funkcja strzałki JS Klasy JS JS JSON Debugowanie JS Przewodnik po stylu JS Najlepsze praktyki JS Błędy JS Wydajność JS JS słowa zastrzeżone

Wersje JS

Wersje JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Krawędź Historia JS

Obiekty JS

Definicje obiektów Właściwości obiektu Metody obiektowe Wyświetlanie obiektów Akcesoria do obiektów Konstruktorzy obiektów Prototypy obiektów Iterowalne obiekty Zestawy obiektów Mapy obiektów Odniesienie do obiektu

Funkcje JS

Definicje funkcji Parametry funkcji Wywołanie funkcji Wywołanie funkcji Funkcja Zastosuj Zamknięcia funkcji

Klasy JS

Wprowadzenie do zajęć Dziedziczenie klas Klasa statyczna

JS Async

Oddzwaniania JS Asynchroniczny JS JS Obietnice JS Async/Oczekiwanie

JS HTML DOM

Wprowadzenie do DOM Metody DOM Dokument DOM Elementy DOM DOM HTML Formularze DOM DOM CSS Animacje DOM Wydarzenia DOM Odbiornik zdarzeń DOM Nawigacja DOM Węzły DOM Kolekcje DOM Listy węzłów DOM

Zestawienie komponentów przeglądarki JS

Okno JS Ekran JS Lokalizacja JS Historia JS JS Navigator Wyskakujący alert JS Czas JS Pliki cookie JS

JS Web API

Wprowadzenie do internetowego interfejsu API Interfejs API formularzy internetowych Interfejs API historii online API przechowywania danych w sieci Web Web Worker API Internetowy interfejs API pobierania Internetowy interfejs API geolokalizacji

JS AJAX

Wprowadzenie do AJAX AJAX XMLHttp Żądanie AJAX Odpowiedź AJAX Plik XML AJAX AJAX PHP ASP AJAX Baza danych AJAX Aplikacje AJAX Przykłady AJAX

JS JSON

Wprowadzenie do JSON Składnia JSON JSON a XML Typy danych JSON Analiza JSON JSON Obiekty JSON Tablice JSON Serwer JSON JSON PHP JSON HTML JSON JSONP

JS kontra jQuery

Selektory jQuery jQuery HTML jQuery CSS jQuery DOM

Grafika JS

Grafika JS JS płótno JS Działka JS Chart.js Wykres JS Google JS D3.js

Przykłady JS

Przykłady JS JS HTML DOM Wejście JS HTML Obiekty HTML JS Wydarzenia JS HTML Przeglądarka JS Edytor JS Ćwiczenia JS JS Quiz Certyfikat JS

Referencje JS

Obiekty JavaScript Obiekty HTML DOM


Konwersja typu JavaScript

  • Konwersja ciągów na liczby
  • Konwersja liczb na ciągi
  • Konwersja dat na liczby
  • Konwersja liczb na daty
  • Zamiana wartości logicznych na liczby
  • Konwersja liczb na wartości logiczne

Konwersja typu JavaScript

Zmienne JavaScript można przekonwertować na nową zmienną i inny typ danych:

  • Za pomocą funkcji JavaScript
  • Automatycznie przez sam JavaScript

Konwersja ciągów na liczby

Metoda globalna Number()może konwertować łańcuchy na liczby.

Ciągi zawierające liczby (np. „3.14”) są konwertowane na liczby (np. 3.14).

Puste ciągi są konwertowane na 0.

Wszystko inne zamienia się na NaN(nie jest liczbą).

Number("3.14")    // returns 3.14
Number(" ")       // returns 0
Number("")        // returns 0
Number("99 88")   // returns NaN

Metody liczbowe

W rozdziale Metody liczbowe znajdziesz więcej metod, których można użyć do konwersji łańcuchów na liczby:

Method Description
Number() Returns a number, converted from its argument
parseFloat() Parses a string and returns a floating point number
parseInt() Parses a string and returns an integer

Jednoargumentowy + Operator

Operator jednoargumentowy + może służyć do konwersji zmiennej na liczbę:

Przykład

let y = "5";      // y is a string
let x = + y;      // x is a number

Jeśli zmienna nie może zostać przekonwertowana, nadal stanie się liczbą, ale z wartością NaN (Not a Number):

Przykład

let y = "John";   // y is a string
let x = + y;      // x is a number (NaN)


Konwersja liczb na ciągi

Metoda globalna String()może konwertować liczby na łańcuchy.

Może być używany do dowolnego typu liczb, literałów, zmiennych lub wyrażeń:

Przykład

String(x)         // returns a string from a number variable x
String(123)       // returns a string from a number literal 123
String(100 + 23)  // returns a string from a number from an expression

Metoda Number toString()robi to samo.

Przykład

x.toString()
(123).toString()
(100 + 23).toString()

Więcej metod

W rozdziale Metody liczbowe znajdziesz więcej metod, których można użyć do konwersji liczb na łańcuchy:

Method Description
toExponential() Returns a string, with a number rounded and written using exponential notation.
toFixed() Returns a string, with a number rounded and written with a specified number of decimals.
toPrecision() Returns a string, with a number written with a specified length

Konwersja dat na liczby

Number()Do konwersji dat na liczby można użyć metody globalnej .

d = new Date();
Number(d)          // returns 1404568027739

Metoda daty getTime() robi to samo.

d = new Date();
d.getTime()        // returns 1404568027739

Konwersja dat na ciągi

Metoda globalna String()może konwertować daty na ciągi znaków.

String(Date())  // returns "Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)"

Metoda Date toString()robi to samo.

Przykład

Date().toString()  // returns "Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)"

W rozdziale Metody dat znajdziesz więcej metod, których można użyć do konwersji dat na ciągi znaków:

Method Description
getDate() Get the day as a number (1-31)
getDay() Get the weekday a number (0-6)
getFullYear() Get the four digit year (yyyy)
getHours() Get the hour (0-23)
getMilliseconds() Get the milliseconds (0-999)
getMinutes() Get the minutes (0-59)
getMonth() Get the month (0-11)
getSeconds() Get the seconds (0-59)
getTime() Get the time (milliseconds since January 1, 1970)

Zamiana wartości logicznych na liczby

Metoda globalna Number()może również konwertować wartości logiczne na liczby.

Number(false)     // returns 0
Number(true)      // returns 1

Konwersja wartości logicznych na ciągi

Metoda globalna String()może konwertować wartości logiczne na łańcuchy.

String(false)      // returns "false"
String(true)       // returns "true"

Metoda Boolean toString()robi to samo.

false.toString()   // returns "false"
true.toString()    // returns "true"

Automatyczna konwersja typów

Kiedy JavaScript próbuje operować na „niewłaściwym” typie danych, spróbuje przekonwertować wartość na „właściwy” typ.

Wynik nie zawsze jest taki, jakiego oczekujesz:

5 + null    // returns 5         because null is converted to 0
"5" + null  // returns "5null"   because null is converted to "null"
"5" + 2     // returns "52"      because 2 is converted to "2"
"5" - 2     // returns 3         because "5" is converted to 5
"5" * "2"   // returns 10        because "5" and "2" are converted to 5 and 2

Automatyczna konwersja ciągów

JavaScript automatycznie wywołuje funkcję zmiennej, toString()gdy próbujesz „wyprowadzić” obiekt lub zmienną:

document.getElementById("demo").innerHTML = myVar;

// if myVar = {name:"Fjohn"}  // toString converts to "[object Object]"
// if myVar = [1,2,3,4]       // toString converts to "1,2,3,4"
// if myVar = new Date()      // toString converts to "Fri Jul 18 2014 09:08:55 GMT+0200"

Liczby i wartości logiczne są również konwertowane, ale nie jest to zbyt widoczne:

// if myVar = 123             // toString converts to "123"
// if myVar = true            // toString converts to "true"
// if myVar = false           // toString converts to "false"

Tabela konwersji typów JavaScript

Ta tabela pokazuje wyniki konwersji różnych wartości JavaScript na Number, String i Boolean:

Original
Value
Converted
to Number
Converted
to String
Converted
to Boolean
Try it
false 0 "false" false
true 1 "true" true
0 0 "0" false
1 1 "1" true
"0" 0 "0" true
"000" 0 "000" true
"1" 1 "1" true
NaN NaN "NaN" false
Infinity Infinity "Infinity" true
-Infinity -Infinity "-Infinity" true
"" 0 "" false
"20" 20 "20" true
"twenty" NaN "twenty" true
[ ] 0 "" true
[20] 20 "20" true
[10,20] NaN "10,20" true
["twenty"] NaN "twenty" true
["ten","twenty"] NaN "ten,twenty" true
function(){} NaN "function(){}" true
{ } NaN "[object Object]" true
null 0 "null" false
undefined NaN "undefined" false

Wartości w cudzysłowie wskazują wartości ciągu.

Czerwone wartości oznaczają wartości, których (niektórzy) programiści mogą się nie spodziewać.