Berbagai jenis data dasar dalam JS dapat dikonversi. Ada 5 jenis data dasar dalam JS: String, Number, Boolean, NULL, tidak terdefinisi.
Konversi antara data dasar
| Tipe data asli | Nomor tipe target |
| belum diartikan | Nan |
| batal | 0 |
| PALSU | 0 |
| BENAR | 1 |
| String digital | Nomor yang sesuai |
| String yang tidak dapat diubah | Nan |
| Tipe data asli | String tipe target |
| belum diartikan | belum diartikan |
| batal | batal |
| PALSU | PALSU |
| BENAR | BENAR |
| nomor | String angka |
Penambahan berbagai jenis data dasar, data dikonversi menjadi angka terlebih dahulu, dan kemudian dikonversi menjadi string (jika ada data tipe string untuk berpartisipasi dalam operasi)
Salin kode kode sebagai berikut:
null + tidak ditentukan // 0 + nan
null + false // 0 + 0
1 + true // 1 + 1
1 + '1' /// '11;
1 + 2 + '3' // '33'; akan menjadi hasil yang sama dengan yang berikut.
1 +(2 +'3') // '123';
'S' + null // 'Snull'
'S' + tidak terdefinisi // 'ditutupi'
'S' + true // 'strue'
1+true+tidak terdefinisi+'s' // 1+1+nan+'s' = 2+nan+'s' = nan+'s' = nans
Partisipasi objek dari metode penambahan dan pengurangan
Objek berpartisipasi dalam tipe dasar operasi data, dan pertama -tama diterjemahkan ke dalam tipe dasar. Panggilan pertama metode. Jika tipe dasar dikembalikan, dan kemudian panggil metode tostringnya. Namun, data tanggal justru sebaliknya
Salin kode kode sebagai berikut:
// Untuk memfasilitasi mengamati metode tostring dan nilai metode penulisan ulang
Date.prototype.toString = function () {
Kembali 1;
}
Date.prototype.valueof = function () {
Kembali 2;
}
var a = tanggal baru,
b = tanggal baru;
A + B; // Panggil Tostring, 1 + 1, hasilnya adalah 2
// tulis ulang lagi
Date.prototype.toString = function () {
Kembali {};
}
var c = tanggal baru,
d = tanggal baru;
C + D; // Panggil metode tostring untuk kembali bukanlah tipe dasar, dan kemudian panggil nilai, 2 + 2, hasilnya adalah 4
// Tulis ulang metode nilai
Date.prototype.valueof = function () {
Kembali {};
}
var e = tanggal baru,
f = tanggal baru;
E + f;
Contoh di atas dapat diganti dengan objek atau tipe lain untuk mendapatkan hasil yang sesuai, tetapi nilai panggilan pertama dan kemudian menelepon tostring.
Efek ajaib '+'
Ada angka '+' di depan data, yang dapat dikonversi menjadi angka
Salin kode kode sebagai berikut:
+'1'+1 // 2
+'S'+2 // Nan
Catatan: Untuk pertama kalinya, formatnya tidak baik, dan ada banyak kelalaian.