Pemahaman Hari Jenis Data JavaScript: Primitif lwn. Bukan Primitif

王林
Lepaskan: 2024-09-03 21:08:20
asal
180 orang telah melayarinya

Day nderstanding JavaScript Data Types: Primitive vs. Non-Primitive

Dalam JavaScript, jenis data dibahagikan kepada dua kategori utama: jenis Primitif dan Bukan Primitif (Rujukan). Perbezaan ini penting untuk memahami cara data disimpan dan diakses dalam ingatan. Mari pecahkan setiap jenis dan lihat cara ia berfungsi.

Jenis Data Primitif

JavaScript mempunyai 7 jenis data primitif:

  1. Rentetan

    Mewakili data teks, cth., "Hello World".

  2. Nombor

    Mewakili nombor integer dan titik terapung, cth., 100, 100.3. Tidak seperti beberapa bahasa lain, JavaScript tidak membezakan antara integer dan terapung—semuanya hanyalah Nombor.

    const score = 100;
    const scoreValue = 100.3;
    console.log(typeof scoreValue); // Output: number
    
    Salin selepas log masuk
  3. Boolean

    Mewakili nilai logik: benar atau salah.

    const isLoggedIn = true;
    console.log(typeof isLoggedIn); // Output: boolean
    
    Salin selepas log masuk
  4. Simbol

    Mewakili pengecam unik. Walaupun dua simbol dicipta dengan penerangan yang sama, ia adalah berbeza.

    const id = Symbol('123');
    const anotherId = Symbol('123');
    console.log(id === anotherId); // Output: false
    
    Salin selepas log masuk
  5. Batal

    Mewakili ketiadaan sebarang nilai objek yang disengajakan.

    const outsideTemp = null;
    console.log(typeof outsideTemp); // Output: object
    
    Salin selepas log masuk
  6. Tidak ditentukan

    Mewakili pembolehubah yang telah diisytiharkan tetapi belum diberikan nilai.

    let weather;
    console.log(typeof weather); // Output: undefined
    
    Salin selepas log masuk
  7. BigInt

    Mewakili integer dengan ketepatan arbitrari, membolehkan anda bekerja dengan nombor yang besar melebihi had integer selamat Nombor.

    const bigNumber = 23873847283748289483n;
    console.log(typeof bigNumber); // Output: bigint
    
    Salin selepas log masuk
Jenis Data Primitif: Panggilan mengikut Nilai

Jenis primitif disimpan terus dalam lokasi memori yang dikaitkan dengan pembolehubah. Apabila anda memperuntukkan nilai primitif kepada pembolehubah lain, salinan baharu nilai tersebut dibuat.

let myName = "Aman";
let myOtherName = myName;
myOtherName = "Dawn";
console.log(myName);       // Output: Aman
console.log(myOtherName);  // Output: Dawn
Salin selepas log masuk

Dalam contoh di atas, menukar myOtherName tidak menjejaskan myName, kerana salinan baharu nilai telah dibuat.

Jenis Data Bukan Primitif

Jenis bukan primitif, juga dikenali sebagai jenis rujukan, termasuk:

  1. Array

    Koleksi elemen yang boleh daripada sebarang jenis, disimpan sebagai senarai.

    const heros = ["ironman", "spiderman", "batman"];
    console.log(typeof heros); // Output: object
    
    Salin selepas log masuk
  2. Objek

    Koleksi pasangan nilai kunci, yang kuncinya adalah rentetan atau Simbol, dan nilainya boleh dari sebarang jenis.

    let myObj = {
        name: "Ayush",
        age: 21,
    };
    console.log(typeof myObj); // Output: object
    
    Salin selepas log masuk
  3. Fungsi

    Blok kod direka untuk melaksanakan tugas tertentu, yang boleh disimpan dalam pembolehubah.

    const myFunction = function() {
        console.log("Hello World");
    };
    console.log(typeof myFunction); // Output: function
    
    Salin selepas log masuk
Jenis Data Bukan Primitif: Panggilan melalui Rujukan

Jenis bukan primitif disimpan dalam timbunan dan pembolehubah memegang rujukan (alamat memori) kepada data sebenar. Apabila anda menetapkan jenis bukan primitif kepada pembolehubah lain, kedua-dua pembolehubah menghala ke lokasi memori yang sama.

let userOne = {
    email: "user1@google.com",
    upi: "user@ybl"
};
let userTwo = userOne;
userTwo.email = "aman@google.com";
console.log(userOne.email);  // Output: aman@google.com
console.log(userTwo.email);  // Output: aman@google.com
Salin selepas log masuk

Dalam contoh di atas, mengubah suai userTwo.email juga menukar userOne.email kerana kedua-dua pembolehubah merujuk objek yang sama dalam ingatan.

Pengambilan Utama

  • Jenis primitif ialah jenis data ringkas yang menyimpan nilai secara langsung. Ia tidak boleh diubah dan setiap pembolehubah memegang salinan datanya sendiri.
  • Jenis bukan primitif adalah lebih kompleks dan pembolehubah menyimpan rujukan kepada data. Perubahan kepada satu pembolehubah boleh mempengaruhi orang lain yang merujuk data yang sama.
  • Memahami perbezaan ini adalah penting untuk menulis kod yang cekap dan bebas pepijat dalam JavaScript.

Selamat pengekodan dan jumpa lagi pada yang seterusnya!!!

Atas ialah kandungan terperinci Pemahaman Hari Jenis Data JavaScript: Primitif lwn. Bukan Primitif. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!