Ne olduklarını anlamaya çalışan, ES6 semboller keşfetmek ve ben henüz sembolleri anlayamıyorum Bu davranışaBir sembolün anahtar olarak kullanılıp kullanılmadığını nasıl anlarım?
> let sym = Symbol()
> let a = {}
> a[sym]= "value"
'value'
> a
{}
> Object.keys(a)
[]
> Object.getOwnPropertyNames(a)
[]
> a[sym]
'value'
> a[Symbol()]
undefined
> JSON.stringify(sym)
undefined
> JSON.stringify(a)
'{}'
> sym
Symbol()
kafamı sarmak olamaz, ama nerede anahtar ve değer gizleme olduğunu?!? Java senaryosu büyücülük ve büyücülük alanına mı düştü? Zaten orada olduğunu söylemek için var mı?
DÜZENLEME ::
) (Object.getOwnPropertySymbols hakkında bana bildirdiğiniz için teşekkür ederiz;ES6 ile birlikte, gizli olmayan sayılabilir olmayan özellikler için Object.getOwnPropertyNames() ve Object.getOwnPropertySymbols() yöntemini kontrol etmem gerekiyor mu?
bu yardımcı emin değildir. "Bir sembol benzersiz ve değişmez bir veri türü ve nesne özellikleri için bir tanımlayıcı olarak kullanılabilir sembol nesne sembol temel veri türü örtülü bir nesne sarıcı" https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol – pherris
Hem mevcut hem de mevcut olmayan bir süperpozisyon var mı? SchrödingerCats() – lonewarrior556
için yeniden adlandırma sembolleri 'Object.getOwnPropertySymbols (a) ' – pherris