mirror of
https://github.com/pezkuwichain/pezkuwi-common.git
synced 2026-04-22 02:07:56 +00:00
24 lines
771 B
JavaScript
24 lines
771 B
JavaScript
import { isClass } from './class.js';
|
|
/**
|
|
* @name isChildClass
|
|
* @summary Tests if the child extends the parent Class
|
|
* @description
|
|
* Checks to see if the child Class extends the parent Class
|
|
* @example
|
|
* <BR>
|
|
*
|
|
* ```javascript
|
|
* import { isChildClass } from '@pezkuwi/util';
|
|
*
|
|
* console.log('isChildClass', isChildClass(BN, BN); // => true
|
|
* console.log('isChildClass', isChildClass(BN, Uint8Array); // => false
|
|
* ```
|
|
*/
|
|
export function isChildClass(Parent, Child) {
|
|
// https://stackoverflow.com/questions/30993434/check-if-a-constructor-inherits-another-in-es6/30993664
|
|
return isClass(Child) && isClass(Parent)
|
|
// eslint-disable-next-line no-prototype-builtins
|
|
? Parent === Child || Parent.isPrototypeOf(Child)
|
|
: false;
|
|
}
|