Jenis Data Dasar:Akses nilai, yang memungkinkan Anda memanipulasi nilai aktual yang disimpan dalam variabel. Nilai jenis dasar mengacu pada segmen data sederhana.
Ada lima tipe data dasar:Tidak ditentukan、Null、String、Number、Boolean。
Jenis Kutipan:Saat menyalin variabel objek, itu adalah referensi objek yang sedang dimanipulasi, tetapi ketika menambahkan properti ke objek, objek aktuallah yang sedang dimanipulasi. Nilai jenis referensi adalah objek yang mungkin terdiri dari beberapa nilai.
Ada beberapa jenis kutipan:objek, Array, RegExp, Tanggal, Fungsi, jenis pembungkus dasar khusus (String, Number, Boolean), dan objek bawaan monolitik (Global, Matematika).
Untuk perbedaan antara nilai tipe dasar dan nilai tipe referensi:
(1)Nilai jenis referensi menambahkan properti dan metode, sedangkan nilai tipe dasar tidak dapat。
(2)Saat menyalin nilai variabel, jenis dasar membuat nilai baru pada objek variabel dan menyalinnya ke variabel baru. Sejak itu,Setiap tindakan dari kedua variabel tidak mempengaruhi yang lain; Jenis referensi adalah untuk menyalin salinan nilai yang disimpan dalam objek variabel ke variabel baru, tetapi nilai kedua variabel menunjuk ke objek yang disimpan dalam tumpukan, yaitu, mereka benar-benar mengacu pada objek yang sama.Mengubah satu variabel memengaruhi variabel lainnya。
Nilai jenis referensi, menggunakan array sebagai contoh:
Lewati parameter: Teruskan nilai, salin nilai di luar fungsi ke parameter di dalam fungsi (variabel lokal), ketika variabel lokal dioperasikan, perubahan variabel lokal akan tercermin di luar fungsi, tetapi ini tidak akan memengaruhi nilai di luar fungsi.
Tentu saja, mungkin sulit untuk dipahami saat menggunakan objek:
Jelas, parameter diteruskan berdasarkan nilai, jadi mengapa instance p yang dibuat juga bisa mendapatkan atribut name yang ditambahkan di setName()?
Karena obj dan p mengacu pada objek yang sama, obj akan mengakses objek yang sama dengan referensi, bahkan jika diteruskan oleh nilai. Lihatlah contoh di bawah ini untuk memperjelasnya.
Tulis ulang objek obj di dalam fungsi, saat ini objek obj mereferensikan objek lokal, dan p luar masih merupakan referensi asli, sehingga tidak akan berubah.
Jenis pengujian:
typeof:确定变量是字符串、数值、布尔值还是undefined的最佳工具。
instanceof: Tentukan apakah itu adalah jenis objek.
|