tutorial pengembangan web terbaru
 

JavaScript Jenis Konversi


Number() mengkonversi ke nomor satu, String() mengkonversi ke String, Boolean() mengkonversi ke Boolean.


Tipe Data JavaScript

Dalam JavaScript ada 5 jenis data yang berbeda yang dapat berisi nilai-nilai:

  • string
  • number
  • boolean
  • object
  • function

Ada 3 jenis objek:

  • Object
  • Date
  • Array

Dan jenis 2 data yang tidak dapat berisi nilai-nilai:

  • null
  • undefined

The typeof Operator

Anda dapat menggunakan typeof operator untuk menemukan jenis data variabel JavaScript.

Contoh

typeof "John"                 // Returns string
typeof 3.14                   // Returns number
typeof NaN                    // Returns number
typeof false                  // Returns boolean
typeof [1,2,3,4]              // Returns object
typeof {name:'John', age:34}  // Returns object
typeof new Date()             // Returns object
typeof function () {}         // Returns function
typeof myCar                  // Returns undefined (if myCar is not declared)
typeof null                   // Returns object
Cobalah sendiri "

Silahkan amati:

  • Jenis data NaN adalah nomor
  • Tipe data dari suatu array merupakan objek
  • Tipe data dari date adalah objek
  • Jenis data null adalah objek
  • Tipe data dari undefined variabel tidak terdefinisi

Anda tidak dapat menggunakan typeof untuk menentukan apakah objek JavaScript adalah array (atau tanggal).


Data Jenis typeof

The typeof operator adalah bukan variabel. Ini adalah operator. Operator ( + - * / ) tidak memiliki jenis data.

Tapi, yang typeof operator yang selalu mengembalikan string yang berisi jenis operan.


The constructor Properti

The constructor properti mengembalikan fungsi konstruktor untuk semua variabel JavaScript.

Contoh

"John".constructor                 // Returns function String()  { [native code] }
(3.14).constructor                 // Returns function Number()  { [native code] }
false.constructor                  // Returns function Boolean() { [native code] }
[1,2,3,4].constructor              // Returns function Array()   { [native code] }
{name:'John', age:34}.constructor  // Returns function Object()  { [native code] }
new Date().constructor             // Returns function Date()    { [native code] }
function () {}.constructor         // Returns function Function(){ [native code] }
Cobalah sendiri "

Anda dapat memeriksa properti konstruktor untuk mengetahui apakah sebuah objek adalah Array (mengandung kata "Array" ):

Contoh

function isArray(myArray) {
    return myArray.constructor.toString().indexOf("Array") > -1;
}
Cobalah sendiri "

Anda dapat memeriksa properti konstruktor untuk mengetahui apakah suatu objek Tanggal (mengandung kata "Date" ):

Contoh

function isDate(myDate) {
    return myDate.constructor.toString().indexOf("Date") > -1;
}
Cobalah sendiri "

Jenis Konversi JavaScript

variabel JavaScript dapat dikonversi ke variabel baru dan tipe data lain:

  • Dengan menggunakan fungsi JavaScript
  • Secara otomatis oleh JavaScript itu sendiri

Konversi Bilangan untuk Strings

Metode global yang String() dapat mengkonversi nomor ke string.

Hal ini dapat digunakan pada semua jenis nomor, literal, variabel, atau ekspresi:

Contoh

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
Cobalah sendiri "

Metode Nomor toString() melakukan hal yang sama.

Contoh

x.toString()
(123).toString()
(100 + 23).toString()
Cobalah sendiri "

Dalam bab Metode Nomor , Anda akan menemukan metode yang lebih yang dapat digunakan untuk mengkonversi angka untuk string:

metode Deskripsi
toExponential() Mengembalikan string, dengan sejumlah bulat dan ditulis menggunakan notasi eksponensial.
toFixed() Mengembalikan string, dengan sejumlah bulat dan ditulis dengan angka desimal yang ditentukan.
toPrecision() Mengembalikan string, dengan sejumlah ditulis dengan panjang tertentu

Konversi Booleans ke Strings

Metode global yang String() dapat mengkonversi boolean ke string.

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

Metode Boolean toString() melakukan hal yang sama.

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

Konversi Tanggal untuk Strings

Metode global yang String() dapat mengkonversi tanggal untuk string.

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

Metode Tanggal toString() melakukan hal yang sama.

Contoh

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

Dalam bab Metode Tanggal , Anda akan menemukan metode yang lebih yang dapat digunakan untuk mengkonversi tanggal untuk string:

metode Deskripsi
getDate() Dapatkan hari sebagai angka (1-31)
getDay() Dapatkan hari kerja nomor (0-6)
getFullYear() Dapatkan tahun empat digit (yyyy)
getHours() Dapatkan jam (0-23)
getMilliseconds() Dapatkan milidetik (0-999)
getMinutes() Dapatkan menit (0-59)
getMonth() Dapatkan bulan (0-11)
getSeconds() Dapatkan detik (0-59)
getTime() Dapatkan waktu (milidetik sejak 1 Januari 1970)

Konversi String ke Numbers

Metode global yang Number() dapat mengkonversi string ke nomor.

String yang berisi nomor (seperti "3.14" ) dikonversi ke nomor (seperti 3.14).

string kosong dikonversi ke 0.

Ada lagi mengkonversi ke NaN (Not nomor).

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

Dalam bab Metode Nomor , Anda akan menemukan metode yang lebih yang dapat digunakan untuk mengkonversi string ke nomor:

metode Deskripsi
parseFloat() Mem-parsing string dan mengembalikan sejumlah floating point
parseInt() Mem-parsing string dan mengembalikan integer

The Unary + Operator

The unary + operator dapat digunakan untuk mengkonversi variabel ke nomor:

Contoh

var y = "5";      // y is a string
var x = + y;      // x is a number
Cobalah sendiri "

Jika variabel tidak dapat dikonversi, masih akan menjadi nomor, tetapi dengan nilai NaN (Not angka):

Contoh

var y = "John";   // y is a string
var x = + y;      // x is a number (NaN)
Cobalah sendiri "

Konversi Booleans Bilangan

Metode global yang Number() juga dapat mengkonversi boolean ke nomor.

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

Konversi Tanggal Bilangan

Metode global yang Nomor () dapat digunakan untuk mengkonversi tanggal untuk nomor.

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

Tanggal metode getTime() melakukan hal yang sama.

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

Jenis Konversi otomatis

Ketika JavaScript mencoba untuk beroperasi pada "salah" tipe data, ia akan mencoba untuk mengkonversi nilai ke tipe "benar".

hasilnya tidak selalu apa yang Anda harapkan:

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
Cobalah sendiri "

Konversi String otomatis

JavaScript secara otomatis panggilan variabel toString() fungsi ketika Anda mencoba untuk "output" objek atau variabel:

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"

Nomor dan boolean juga diubah, tapi ini tidak terlalu terlihat:

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

JavaScript Jenis Tabel Konversi

Tabel ini menunjukkan hasil konversi nilai JavaScript yang berbeda untuk Number, String, dan Boolean:

Asli
Nilai
dikonversi
Nomor
dikonversi
untuk String
dikonversi
untuk Boolean
Cobalah
false0"false"false Cobalah "
true1"true"true Cobalah "
00"0"false Cobalah "
11"1"true Cobalah "
"0"0"0"true Cobalah "
"1"1"1"true Cobalah "
NaNNaN"NaN"false Cobalah "
InfinityInfinity"Infinity"true Cobalah "
-Infinity-Infinity"-Infinity"true Cobalah "
""0""false Cobalah "
"20"20"20"true Cobalah "
"twenty"NaN"twenty"true Cobalah "
[ ]0""true Cobalah "
[20]20"20"true Cobalah "
[10,20]NaN"10,20"true Cobalah "
["twenty"]NaN"twenty"true Cobalah "
["ten","twenty"]NaN"ten,twenty"true Cobalah "
function(){}NaN"function(){}"true Cobalah "
{ }NaN"[object Object]"true Cobalah "
null0"null"false Cobalah "
undefinedNaN"undefined"false Cobalah "

Nilai-nilai dalam tanda kutip menunjukkan nilai-nilai string.

Nilai merah menunjukkan nilai-nilai (beberapa) programmer mungkin tidak mengharapkan.