Jenis Data JavaScript
Dalam JavaScript ada 5 tipe data berbeda yang bisa mengandung nilai:
- string
- number
- boolean
- object
- function
Ada 3 jenis objek:
- Object
- Date
- Array
Dan 2 tipe data yang tidak dapat berisi nilai:
- null
- undefined
Jenis Operator
Anda bisa menggunakan tipe operator untuk mencari tipe data dari variabel JavaScript.
Contoh
typeof "John" // Mengembalikan string
typeof 3.14 // nomor kembali
typeof NaN // Mengembalikan nomor
typeof false // Mengembalikan boolean
typeof [1,2,3,4] // Mengembalikan objek
typeof {name: 'John', age: 34} // Mengembalikan objek
typeof new Date() // Mengembalikan objek
Fungsi typeof function() {} // Returns
typeof myCar // Returns undefined (jika myCar tidak dinyatakan)
typeof null // Mengembalikan objek
Harap diperhatikan:
- Tipe data NaN adalah bilangan
- Tipe data dari sebuah array adalah objek
- Jenis data tanggal adalah objek
- Jenis data null adalah objek
- Tipe data dari variabel undefined tidak terdefinisi
Anda tidak dapat menggunakan typeof untuk menentukan apakah objek JavaScript adalah array(atau tanggal).
Tipe Data dari jenis
Tipe operator bukan variabel. Ini adalah operator. Operator(+ - * /) tidak memiliki tipe data.
Tapi, tipe operator selalu mengembalikan sebuah string yang berisi tipe operan.
Properti konstruktor
Properti konstruktor mengembalikan fungsi konstruktor untuk semua variabel JavaScript.
Contoh
"John".constructor // Mengembalikan fungsi String() {[native code]}
(3.14) .constructor // Returns function Number() {[kode asli]}
false.constructor // Mengembalikan fungsi Boolean() {[kode asli]}
[1,2,3,4]. constructor // Fungsi pengulangan Array() {[kode asli]}
{Name: 'John', age: 34} .constructor // Mengembalikan fungsi Object() {[native code]}
new Date().constructor // Fungsi pengulangan Tanggal() {[kode asli]}
function(){}.constructor // Fungsi pengulangan Function() {[native code]}
Anda dapat memeriksa properti konstruktor untuk mengetahui apakah sebuah objek adalah Array(berisi kata "Array"):
Contoh
function isArray(myArray) {
return myArray.constructor.toString().indexOf("Array") > -1;
}
Anda dapat memeriksa properti konstruktor untuk mengetahui apakah sebuah objek adalah Tanggal(berisi kata "Tanggal"):
Contoh
function isDate(myDate) {Jenis Konversi JavaScript
return myDate.constructor.toString().indexOf("Date") > -1;
}
variabel JavaScript dapat dikonversi ke variabel baru dan tipe data lain:
- Dengan menggunakan fungsi JavaScript
- Otomatis oleh JavaScript itu sendiri
Mengubah Angka ke String
Metode global String() dapat mengkonversi angka ke string.
Ini dapat digunakan pada semua jenis angka, literal, variabel, atau ekspresi:
Contoh
String(x) // mengembalikan sebuah string dari sejumlah variabel x
String(123) // mengembalikan sebuah string dari angka 123
String(100 + 23) // mengembalikan sebuah string dari sebuah angka dari sebuah ekspresi
Metode Number toString() melakukan hal yang sama.
Contoh
x.toString()
(123) .toString()
(100 + 23) .toString()
Dalam Bab Number Methods, Anda akan menemukan lebih banyak metode yang dapat digunakan untuk mengkonversi angka ke string:
toExponential() Mengembalikan sebuah string, dengan angka bulat dan ditulis menggunakan notasi eksponensial.
toFixed() Mengembalikan sebuah string, dengan angka dibulatkan dan ditulis dengan jumlah desimal tertentu.
toPrecision() Mengembalikan string, dengan angka yang ditulis dengan panjang tertentu
Mengubah Boolean menjadi String
Metode global String() dapat mengubah boolean menjadi string.
String(false) // mengembalikan "false"
String(true) // kembali "true"
Metode Boolean toString() melakukan hal yang sama.
false.toString() // mengembalikan "false"Mengubah Tanggal ke String
true.toString() // mengembalikan "true"
Metode global String() dapat mengkonversi tanggal menjadi string.
String(Date()) // kembali Thu Jul 17 2014 15:38:19 GMT + 0200(W. Europe Daylight Time)
Metode Tanggal toString() melakukan hal yang sama.
Contoh
Date() toString() // kembali Thu Jul 17 2014 15:38:19 GMT + 0200(W. Europe Daylight Time)
Dalam Bab Metode Tanggal, Anda akan menemukan lebih banyak metode yang dapat digunakan untuk mengubah tanggal menjadi string:
getDate() Dapatkan hari sebagai nomor(1-31)
getDay() Dapatkan hari kerja nomor(0-6)
getFullYear() Dapatkan empat digit tahun(yyyy)
getHours() Dapatkan jam(0-23)
getMilliseconds() Dapatkan milidetik(0-999)
getMinutes() Dapatkan notulen(0-59)
getMonth() Dapatkan bulan(0-11)
getSeconds() Dapatkan detik(0-59)
getTime() Dapatkan waktu(milidetik sejak 1 Januari 1970)
Mengubah String menjadi Angka
Metode global Number() dapat mengubah string menjadi angka.
String yang berisi angka(seperti "3.14") dikonversi ke angka(seperti 3,14).
String kosong dikonversi ke 0.
Ada lagi yang berubah menjadi NaN(Bukan nomor).
Number("3.14") // kembali 3.14
Number("") // kembali 0
Number("") // kembali 0
Number("99 88") // mengembalikan NaN
Dalam Bab Number Methods, Anda akan menemukan lebih banyak metode yang dapat digunakan untuk mengubah string menjadi angka:
ParseFloat() Parses string dan mengembalikan bilangan floating point
ParseInt() Parses string dan mengembalikan bilangan bulat
Operator Unary +
Operator unary + dapat digunakan untuk mengubah variabel ke angka:
Contoh
var y = "5"; // y adalah sebuah string
var x = + y; // x adalah angka
Jika variabel tidak dapat dikonversi, maka akan tetap menjadi angka, namun dengan nilai NaN(Bukan angka):
Contoh
var y = "John"; // y adalah sebuah stringMengubah Boolean menjadi Bilangan
var x = + y; // x adalah angka(NaN)
Metode global Number() juga bisa mengubah boolean menjadi angka.
Number(salah) // kembali 0Mengubah Tanggal ke Angka
Number(true) // kembali 1
Metode global Number() dapat digunakan untuk mengubah tanggal menjadi angka.
d = new date();
Number(d) // mengembalikan 1404568027739
Metode tanggal getTime() melakukan hal yang sama.
d = new date();Konversi Tipe Otomatis
d.getTime() // mengembalikan 1404568027739
Saat JavaScript mencoba beroperasi dengan tipe data yang "salah", JavaScript akan mencoba mengubah nilai menjadi "benar".
Hasilnya tidak selalu seperti yang Anda harapkan:
5 + null // return 5 karena null dikonversi menjadi 0Konversi String Otomatis
"5" + null // returns "5null" karena null diubah menjadi "null"
"5" + 2 // kembali 52 karena 2 dikonversi ke "2"
"5" - 2 // kembali 3 karena "5" diubah menjadi 5
"5" * "2" // kembali 10 karena "5" dan "2" dikonversi menjadi 5 dan 2
JavaScript secara otomatis memanggil fungsi toString() variabel tersebut saat Anda mencoba untuk "menampilkan" objek atau variabel:
document.getElementById("demo"). InnerHTML = myvar;
// if myvar = {name: "Fjohn"} // toString mengkonversi ke "[object object]"
// jika myvar = [1,2,3,4] // toString mengkonversi ke "1,2,3,4"
// if myvar = new date() // toString ubah menjadi "Fri Jul 18 2014 09:08:55 GMT + 0200"
Angka dan boolean juga dikonversi, tapi ini tidak terlalu terlihat:
// jika myvar = 123 // toString mengkonversi ke "123"Tabel Konversi Jenis JavaScript
// jika myvar = true // toString mengkonversi menjadi "true"
// jika myvar = false // toString mengkonversi ke "false"
Tabel ini menunjukkan hasil pengubahan nilai JavaScript yang berbeda menjadi Number, String, dan Boolean:
Nilai | dikonversi Ke nomor |
dikonversi Ke String |
dikonversi Ke Boolean |
|
---|---|---|---|---|
false | 0 | "false" | false | |
true | 1 | "true" | true | |
0 | 0 | "0" | false | |
1 | 1 | "1" | true | |
"0" | 0 | "0" | 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 |
Nilai dalam tanda kutip menunjukkan nilai string.
Nilai merah menunjukkan nilai(beberapa) pemrogram mungkin tidak berjalan.
Out Of Topic Show Konversi KodeHide Konversi Kode