JavaScript: trovare l'oggetto in cui una proprietà è stata definita

Trovare l'oggetto JavaScript in cui una proprietà è stata definita è molto utile nell'OOP.

Possiamo implementare la seguente funzione di utility:


function getDefiningObject( obj, propKey ) {
	obj = Object( obj );
	while ( obj && !{}.hasOwnProperty.call( obj, propKey ) ) {
    	obj = Object.getPrototypeOf( obj );
    
	}
	return obj; 
}


Torna su