


Berapa banyak jenis data primitif yang terdapat dalam es6
Terdapat 6 jenis data primitif: 1. Jenis nol, yang mewakili nilai "kosong", iaitu, tiada nilai; nombor (integer, nombor terapung, dsb.); 4. Jenis rentetan, sekeping teks yang dibalut dengan petikan tunggal atau petikan berganda;
Persekitaran pengendalian tutorial ini: sistem Windows 7, ECMAScript versi 6, komputer Dell G3.
Terdapat 9 jenis data dalam es6, yang boleh dibahagikan kepada dua kategori:
Jenis data primitif (6 jenis): String, Number ), Boolean, Null , Tidak Ditakrifkan, Simbol;
Jenis data rujukan (3 jenis): Objek, Tatasusunan, Fungsi.
Mari kita bincangkan tentang 6 jenis data primitif.
数据类型 | 说明 |
---|---|
null | 空值,表示非对象 |
undefined | 未定义的值,表示未赋值的初始化值 |
number | 数字,数学运算的值 |
string | 字符串,表示信息流 |
boolean | 布尔值,逻辑运算的值 |
Symbol | 表示独一无二的值 |
1. Jenis null
Null ialah jenis data khas dengan hanya satu nilai, yang mewakili nilai "kosong", iaitu tiada nilai. Apa Tiada, digunakan untuk menentukan penunjuk objek nol.
Gunakan operator jenis untuk menyemak jenis Null Anda akan mendapati bahawa jenis Null ialah Objek
var a = null; console.log(typeof a);
Ini bermakna Null sebenarnya. kepunyaan Object nilai istimewa . Jadi dengan memberikan pembolehubah kepada Null kita mencipta objek kosong.
2. Jenis tidak ditentukan
Tidak ditentukan juga merupakan jenis data khas dengan hanya satu nilai, yang bermaksud tidak ditentukan. Apabila kita mengisytiharkan pembolehubah tetapi tidak memberikan nilai kepada pembolehubah, nilai lalai pembolehubah adalah Tidak Ditakrifkan. Contohnya:
var num; console.log(num); // 输出 undefined
Apabila anda menggunakan operator jenis untuk melihat jenis pembolehubah yang tidak ditetapkan, anda akan mendapati bahawa jenisnya juga tidak ditentukan. Untuk pembolehubah yang tidak diisytiharkan, gunakan operator jenis untuk menyemak jenisnya dan anda akan mendapati pembolehubah yang tidak diisytiharkan juga tidak ditentukan Kod sampel adalah seperti berikut:
var message; console.log(typeof message); // 输出 undefined console.log(typeof str); // 输出 undefined
Penjelasan: null, undefined Persamaan dan perbezaan:
Persamaan: kedua-duanya adalah jenis data nilai; kedua-duanya mengembalikan palsu apabila mengambil bahagian dalam penghakiman; kedua-duanya tidak mempunyai kaedah
Perbezaan:
( a), null ialah objek, dan undefined bukan objek; Ia adalah 0 apabila ia adalah nombor, dan ia adalah NaN apabila tidak ditentukan ditukar kepada nombor
(d), jenis null mengembalikan 'objek', jenis pulangan tidak ditentukan 'tidak ditentukan'; >
3. Jenis nombor
Jenis nombor digunakan untuk mentakrifkan nilai berangka JavaScript tidak membezakan antara integer dan perpuluhan (nombor titik terapung), dan diwakili secara seragam oleh Nombor. jenis, seperti yang ditunjukkan dalam contoh berikut:alert(null == undefined) ;//true
Nota: Bilangan nilai yang boleh ditakrifkan oleh jenis Nombor tidak terhad Jenis Nombor dalam JavaScript hanya boleh mewakili nilai antara -(253 - 1) dan (253 -1).
Untuk beberapa nombor yang sangat besar atau sangat kecil, mereka juga boleh diwakili oleh notasi saintifik (eksponen), seperti yang ditunjukkan dalam contoh berikut:var num1 = 123; // 整数 var num2 = 3.14; // 浮点数
var y=123e5; // 123 乘以 10 的 5 次方,即 12300000 var z=123e-5; // 123 乘以 10 的 -5 次方,即 0.00123
- -Infiniti: digunakan untuk mewakili nilai infiniti negatif, secara amnya merujuk kepada nombor kurang daripada 5e-324; Singkatan Nombor), digunakan untuk mewakili struktur operasi matematik yang tidak sah atau tidak ditentukan, seperti 0 dibahagikan dengan 0.
- Petua: Jika hasil pengiraan tertentu melebihi julat nilai jenis Nombor dalam JavaScript, maka nombor itu akan ditukar secara automatik kepada infiniti, dengan nombor positif ialah Infiniti dan nombor negatif menjadi -Infiniti.
- Ada perkara pelik dalam bilangan, yang tidak sama dengan dirinya. Iaitu,
Tetapi NaN ialah jenis data, yang bermaksud nilai pulangan jenis NaN ialah 'nombor';
Untuk dua ciri di atas, ECMAScript menyediakan fungsi ialahNaN( ); Tujuannya adalah untuk menentukan sama ada nilai masuk boleh ditukar kepada nombor, dan nilai pulangan ialah nilai boolean.
Rentetan kosong yang ditukar kepada nombor ialah 0;
Untuk menukar nilai kepada jenis angka, anda boleh menggunakan Number();
alert(NaN == NaN) // false;
4. Jenis rentetan
Jenis Rentetan ialah sekeping teks yang dibalut dengan petikan tunggal '' atau petikan berganda "", seperti '123', "abc". Perlu diingatkan bahawa petikan tunggal dan petikan berganda adalah cara yang berbeza untuk menentukan rentetan dan bukan sebahagian daripada rentetan. Apabila menentukan rentetan, jika rentetan mengandungi petikan, anda boleh menggunakan garis miring ke belakang untuk melepaskan petikan dalam rentetan atau pilih petikan yang berbeza daripada rentetan untuk mentakrifkan rentetan, seperti yang ditunjukkan dalam contoh berikut :
5. Jenis Boolean
Jenis Boolean hanya mempunyai dua nilai, benar (benar) atau palsu (salah), apabila membuat pertimbangan bersyarat Ia sering digunakan. Selain menggunakan secara langsung benar atau palsu untuk mentakrifkan pembolehubah jenis Boolean, anda juga boleh menggunakan beberapa ungkapan untuk mendapatkan nilai jenis Boolean, contohnya: boolean Tujuan utama jenis adalah untuk penghakiman;var str = "Let's have a cup of coffee."; // 双引号中包含单引号 var str = 'He said "Hello" and left.'; // 单引号中包含双引号 var str = 'We\'ll never give up.'; // 使用反斜杠转义字符串中的单引号
Dalam keadaan biasa, hanya enam situasi ini akan ditukar kepada palsu: rentetan kosong, null, undefined, 0, -0, NaN Cara menukar tatasusunan kepada nilai boolean boleh menggunakan dua kaedah: Boolean(), !!()
var a = true; // 定义一个布尔值 true var b = false; // 定义一个布尔值 false var c = 2 > 1; // 表达式 2 > 1 成立,其结果为“真(true)”,所以 c 的值为布尔类型的 true var d = 2 < 1; // 表达式 2 < 1 不成立,其结果为“假(false)”,所以 c 的值为布尔类型的 false
Simbol ada dalam ECMAScript6 Jenis data baharu yang diperkenalkan untuk mewakili unik. nilai jenis Simbol perlu dijana menggunakan fungsi Symbol(), seperti yang ditunjukkan dalam contoh berikut:var str = "123"; var sym1 = Symbol(str); var sym2 = Symbol(str); console.log(sym1); // 输出 Symbol(123) console.log(sym2); // 输出 Symbol(123) console.log(sym1 == sym2); // 输出 false :虽然 sym1 与 sym2 看起来是相同的,但实际上它们并不一样,根据 Symbol 类型的特点,sym1 和 sym2 都是独一无二的Salin selepas log masuk【相关推荐:javascript视频教程、web前端】
Atas ialah kandungan terperinci Berapa banyak jenis data primitif yang terdapat dalam es6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

async ialah es7. async dan await ialah penambahan baharu kepada ES7 dan merupakan penyelesaian untuk operasi asynchronous/wait boleh dikatakan sebagai gula sintaktik untuk modul bersama dan fungsi penjana, menyelesaikan kod tak segerak dengan semantik yang lebih jelas. Seperti namanya, async bermaksud "tak segerak".

Dalam ES6, anda boleh menggunakan kaedah reverse() objek tatasusunan untuk mencapai pembalikan tatasusunan Kaedah ini digunakan untuk membalikkan susunan elemen dalam tatasusunan, meletakkan elemen terakhir dahulu dan elemen pertama terakhir .reverse()". Kaedah reverse() akan mengubah suai tatasusunan asal Jika anda tidak mahu mengubah suainya, anda perlu menggunakannya dengan operator pengembangan "..." dan sintaksnya ialah "[...array].reverse() ".

Langkah-langkah: 1. Tukar dua tatasusunan untuk menetapkan jenis masing-masing, dengan sintaks "newA=new Set(a);newB=new Set(b);" 2. Gunakan has() dan filter() untuk mencari set perbezaan , dengan sintaks " new Set([...newA].filter(x =>!newB.has(x)))", elemen set perbezaan akan dimasukkan dalam koleksi set dan dikembalikan 3. Gunakan Array. daripada untuk menukar set menjadi Jenis tatasusunan, sintaks "Array.from(collection)".

Untuk keserasian pelayar. Sebagai spesifikasi baharu untuk JS, ES6 menambah banyak sintaks dan API baharu Walau bagaimanapun, penyemak imbas moden tidak mempunyai sokongan tinggi untuk ciri baharu ES6, jadi kod ES6 perlu ditukar kepada kod ES5. Dalam alat pembangun web WeChat, babel digunakan secara lalai untuk menukar kod sintaks ES6 pembangun kepada kod ES5 yang disokong dengan baik oleh ketiga-tiga terminal, membantu pembangun menyelesaikan masalah pembangunan yang disebabkan oleh persekitaran yang berbeza hanya dalam projek Hanya konfigurasi dan semak Pilihan "ES6 hingga ES5".

Tidak, memerlukan sintaks modular bagi spesifikasi CommonJS dan sintaks modular bagi spesifikasi es6 ialah import. memerlukan dimuatkan pada masa jalan, dan import dimuatkan pada masa penyusunan; memerlukan boleh ditulis di mana-mana dalam kod, import hanya boleh ditulis di bahagian atas fail dan tidak boleh digunakan dalam penyataan bersyarat atau skop fungsi diperkenalkan sahaja apabila memerlukan dijalankan Oleh itu, prestasi adalah agak rendah Sifat modul yang diperkenalkan semasa penyusunan import mempunyai prestasi yang lebih tinggi.

Dalam es6, zon mati sementara ialah ralat sintaks, yang merujuk kepada arahan let dan const yang menjadikan blok membentuk skop tertutup. Dalam blok kod, sebelum pembolehubah diisytiharkan menggunakan perintah let/const, pembolehubah tidak tersedia dan tergolong dalam "zon mati" pembolehubah sebelum pembolehubah diisytiharkan ini secara sintaksis dipanggil "zon mati sementara". ES6 menetapkan bahawa promosi pembolehubah tidak berlaku dalam zon mati sementara dan pernyataan let dan const, terutamanya untuk mengurangkan ralat masa jalan dan menghalang pembolehubah daripada digunakan sebelum ia diisytiharkan, yang mungkin membawa kepada tingkah laku yang tidak dijangka.

Peta dipesan. Jenis peta dalam ES6 ialah senarai tersusun yang menyimpan banyak pasangan nilai kunci Nama kunci dan nilai yang sepadan menyokong semua jenis data, kesetaraan nama kunci dinilai dengan memanggil kaedah "Objext.is()". , jadi nombor 5 dan rentetan "5" akan dinilai sebagai dua jenis, dan boleh muncul dalam program sebagai dua kekunci bebas.

Dalam es5, anda boleh menggunakan fungsi for dan indexOf() untuk mencapai deduplikasi tatasusunan Sintaks "for(i=0;i<array length;i++){a=newArr.indexOf(arr[i]);if(. a== -1){...}}". Dalam es6, anda boleh menggunakan operator spread, Array.from() dan Set untuk mengalih keluar penduaan anda perlu terlebih dahulu menukar tatasusunan menjadi objek Set untuk mengalih keluar pendua, dan kemudian menggunakan fungsi spread atau Array.from() untuk tukar objek Set kembali kepada kumpulan Just.
