Dalam JavaScript kita memiliki beberapa cara untuk mendapatkan properti dari suatu objek, bergantung pada apa yang ingin kita dapatkan.
1) Object.keys()
, yang mengembalikan semua properti objek yang tak terhitung jumlahnya, metode ECMA5.
2) for...in
perulangan, yang mengembalikan semua properti yang dapat dihitung dari suatu objek, terlepas dari apakah itu properti sendiri, atau diwarisi dari rantai prototipe.
3) Object.getOwnPropertyNames(obj)
yang mengembalikan semua properti sendiri dari suatu objek, dapat dihitung atau tidak.
Kami juga memiliki metode seperti hasOwnProperty(prop)
memungkinkan kami memeriksa apakah properti diwariskan atau benar-benar milik objek itu, dan propertyIsEnumerable(prop)
yang, seperti namanya, memungkinkan kami memeriksa apakah properti dapat dihitung.
Dengan semua opsi ini, tidak ada cara untuk mendapatkan properti non-enumerable, non-own dari suatu objek, yang ingin saya lakukan. Apakah ada cara untuk melakukan ini? Dengan kata lain, dapatkah saya mendapatkan daftar properti warisan yang tidak dapat dihitung?
Terima kasih.