Rumah  >  Artikel  >  hujung hadapan web  >  Adakah terdapat cara untuk melintasi objek dalam es6?

Adakah terdapat cara untuk melintasi objek dalam es6?

青灯夜游
青灯夜游asal
2022-10-25 19:09:191565semak imbas

Ya. Kaedah traversal: 1. pernyataan "untuk...dalam", melintasi sifat terbilang objek sendiri dan diwarisi 2. Object.keys(), melintasi nama harta; 3. Object.getOwnPropertyNames(), melintasi sifat Nama untuk dilalui ; 4. Object.getOwnPropertySymbols(), melintasi semua sifat Simbol 5. Reflect.ownKeys(), melintasi semua sifat.

Adakah terdapat cara untuk melintasi objek dalam es6?

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

6 cara untuk melintasi objek dalam es6

(1) untuk...dalam

for...inLoop traversal Sifat terbilang objek itu sendiri dan diwarisi (tidak termasuk sifat Simbol).

const obj = {
id:1,
name:‘zhangsan’,
age:18
}
for(let key in obj){
console.log(key + ‘—’ + obj[key])
}

Adakah terdapat cara untuk melintasi objek dalam es6?

(2) Object.keys(obj)

Object.keysMengembalikan tatasusunan termasuk The nama kunci semua sifat terhitung (tidak termasuk sifat Simbol) objek itu sendiri (tidak termasuk yang diwarisi).

Adakah terdapat cara untuk melintasi objek dalam es6?

(3) Object.getOwnPropertyNames(obj)

Object.getOwnPropertyNamesMengembalikan tatasusunan yang mengandungi semua sifat objek itu sendiri ( Nama kunci tidak mengandungi atribut Simbol, tetapi termasuk atribut tidak boleh dikira).

Adakah terdapat cara untuk melintasi objek dalam es6?

(4) Object.getOwnPropertySymbols(obj)

Object.getOwnPropertySymbolsMengembalikan tatasusunan yang mengandungi semua sifat Simbol objek nama kunci sendiri.

Adakah terdapat cara untuk melintasi objek dalam es6?

(5) Reflect.ownKeys(obj)

Reflect.ownKeysMengembalikan tatasusunan yang mengandungi objek itu sendiri (tidak termasuk Diwarisi) semua nama kunci, tidak kira sama ada nama kunci ialah Simbol atau rentetan, dan sama ada ia boleh dikira atau tidak.

Adakah terdapat cara untuk melintasi objek dalam es6?

5 kaedah di atas merentasi nama utama objek, dan semuanya mengikut peraturan tertib yang sama bagi traversal atribut.

  • Mula-mula melintasi semua kekunci angka dan menyusunnya dalam tertib nilai menaik.
  • Kedua, ulangi semua kekunci rentetan dan isikannya dalam tertib menaik mengikut masa penyatuannya.
  • Akhirnya melintasi semua kekunci Simbol dan menyusunnya dalam tertib menaik mengikut masa penyatuannya.

(5) Reflect.enumerate(obj)

Reflect.enumerate(obj), mengembalikan objek Iterator, merentasi jumlah objek itu sendiri Semua sifat terbilang yang diwarisi (tidak termasuk sifat Simbol) adalah sama dengan gelung untuk...dalam.

[Cadangan berkaitan: tutorial video javascript, Video pengaturcaraan]

Atas ialah kandungan terperinci Adakah terdapat cara untuk melintasi objek 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
Artikel sebelumnya:Adakah es2015 sama dengan es6?Artikel seterusnya:Adakah es2015 sama dengan es6?