Tingkah laku pelik Map()
P粉221046425
P粉221046425 2024-04-03 15:40:52
0
1
442

rreeee

Mengapa apabila saya ingin mendapatkan nilai bukan dengan nama pembolehubah utama tetapi dengan nilai[1,2], tidak ada perkara seperti itu Kalau tambah macam ni

let key = [1,2]
 let m = new Map()
 m.set(key, "12")
 console.log(m.get(key))  // 12
 console.log(m.get([1,2]))  // undefined

Mengenai peta

m.set([1,2], "12")
 m.set([1,2], "123")
 m.set([1,2], "1234")

P粉221046425
P粉221046425

membalas semua(1)
P粉680087550

Gunakan === 运算符来比较密钥。数组是对象,=== 比较对象的引用,而不是它们的值。 [1, 2] === [1, 2] 返回 false kerana setiap objek/susunan literal mencipta rujukan baharu kepada objek baharu. Inilah sebabnya

m.set([1,2], "12")
m.set([1,2], "123")
m.set([1,2], "1234")

Masukkan tiga nilai menggunakan tiga kekunci berbeza dan mengapa

m.get([1,2])

Kembali undefined.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan