Rumah  >  Artikel  >  hujung hadapan web  >  Apakah jenis data baharu yang ditambahkan dalam es6?

Apakah jenis data baharu yang ditambahkan dalam es6?

青灯夜游
青灯夜游asal
2021-09-03 15:42:397916semak imbas

Jenis data yang baru ditambahkan dalam es6: 1. Jenis simbol; 3. Jenis peta; 5. Jenis WeakMap;

Apakah jenis data baharu yang ditambahkan dalam es6?

Persekitaran pengendalian tutorial ini: sistem Windows 7, ECMAScript versi 6, komputer Dell G3.

ES6 jenis data baharu

  • Jenis simbol (asas)
  • Jenis set (kompleks)
  • Jenis peta (kompleks)
  • Jenis WeakSet (kompleks)
  • Jenis Peta Lemah (Kompleks )
  • TypedArray type (Complex)

Mari kita lihat jenis data yang ada sebelum ini es6,

  • Jenis asas:

    • string

    • null

    • undefined

    • number

    • boolean

      >Jenis kompleks:
    • object

    • Memandangkan jenis baharu pada asasnya digunakan dalam kerja harian Ia tidak digunakan, jadi untuk pengenalan terperinci, sila rujuk terus kepada penjelasan profesional
    Berikut adalah beberapa soalan yang sering ditemui dalam temu bual....

S1: Bagaimana untuk membuat objek mempunyai. harta persendirian? (Apakah kegunaan Simbol?) MDN

Jawapan: Gunakan sebagai objek, kemudian

SymbolPada masa ini objek key mempunyai harta peribadi , atribut ini tidak boleh dicetak dengan betul di luar skop.

{ // 私有作用域
  let a = Symbol()
  window.oo = {
    name: '对象',
    age: 18,
    [a]: '这是一个私有属性'
  }
  console.log(oo[a]) // 这是一个私有属性
}
// 不能再作用域外打印...

oo

S2: Bagaimana dengan cepat mengalih keluar pendua daripada tatasusunan? Apakah jenis data baharu yang ditambahkan dalam es6?

Jawapan: Gunakan tambah

Ini adalah soalan temu bual yang sangat klasik Sebelum itu, izinkan saya bercakap tentang kaedah sebelumnya untuk mengalih keluar pendua daripada

: SetArray.form()
es6

Walau bagaimanapun, kaedah ini mempunyai kelemahan yang besar. Tidak boleh ada objek dalam tatasusunan deduplikasi, dan hasil yang dikembalikan oleh kaedah ini adalah semua rentetan, jadi tatasusunan sedemikian tidak boleh. deduplikat.
let array = [1, 2, 3, 4, 4, 5, 5, 6]
~function uniq() {
  let result = []
  let hash = {}
  for (let i=0; i<array.length><p class="image-package">Apabila kita menggunakan <img src="https://img.php.cn/upload/image/369/298/171/1630654569660947.png" title="1630654569660947.png" alt="Apakah jenis data baharu yang ditambahkan dalam es6?"> </p>
<p></p>
<p><code>Set</code></p>Malah rujukan objek boleh dinyahduplikasi, kaedah yang sangat mudah. <pre class="brush:php;toolbar:false">let a = {a: 11}
let array = [0, 1, '1', '22', 22, a, a, 66]
~function uniq() {
  return Array.from(new Set(array)) // 装比写法 [... new Set(array)]
}()

Apakah jenis data baharu yang ditambahkan dalam es6?S3: Apakah kegunaan Peta?

Jawapan:

lebih seperti lanjutan objek nya boleh daripada sebarang jenis, tidak seperti objek sebelumnya yang hanya boleh menjadi rentetan, iaitu, ciri ini, kita boleh mengoptimumkan penyahduaan sebelumnya, tetapi ia tidak perlu kerana sudah ada

.

mapBeri saya contohkeykeyset

let myMap = new Map()
 
let keyObj = {}
let keyFunc = function () {}
let keyString = "a string"
 
// 添加键
myMap.set(keyString, "和键'a string'关联的值");
myMap.set(keyObj, "和键keyObj关联的值");
myMap.set(keyFunc, "和键keyFunc关联的值");
S4: Apakah perbezaan antara WeakMap dan Map?

Apakah jenis data baharu yang ditambahkan dalam es6?

Jawapan:

Perbezaannya ialah rujukan kepada

adalah rujukan yang lemah
  • WeakMapkey's

    hanya boleh menjadi objek
  • WeakMapApa yang anda perlu tahu ialah rujukan yang lemah: keyArtikel: Belajar dan menggunakan ES2015 WeakMap

S5: Apakah perbezaan antara WeakSet dan Set?


Jawapan: Sama seperti di atas

S6: Apakah kegunaan TypedArray?

Jawapan: Terdapat lebih sedikit cara untuk menggunakan jenis ini Ia digunakan terutamanya untuk memproses fail binari (audio, fail, video, gambar...) dan biasanya tidak digunakan melainkan anda membangunkan roda. diri sendiri.

[Pembelajaran yang disyorkan: Tutorial JavaScript Lanjutan

]

Atas ialah kandungan terperinci Apakah jenis data baharu yang ditambahkan dalam es6?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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