@ganuz/is-data-descriptor
Is Data Descriptor is package from Ganuz library
Install
$ yarn add @ganuz/is-data-descriptor
Or
$ npm install --save @ganuz/is-data-descriptor
Use
Module
import {
default as isDataDescriptor
} from '@ganuz/is-data-descriptor';
Browser
<script src="https://unpkg.com/@ganuz/is-data-descriptor/bundle.umd.min.js"></script>
let {
isDataDescriptor
} = G;
Examples
isDataDescriptor(); // => false
isDataDescriptor({}); // => false
isDataDescriptor({foo: 'bar'}); // => false
isDataDescriptor({writable: NaN}); // => true
isDataDescriptor({value: 1980, color: 'green'}); // => true
isDataDescriptor({value: undefined}); // => true
isDataDescriptor({get(){}, value: undefined}); // => true
isDataDescriptor({set(){}, writable: undefined}); // => true
isDataDescriptor({set(){}, get(){}, value: 70n, writable: false}); // => true
Note: This function does not validate that it is a valid descriptor, it only checks if the properties of data descriptor exist, for description validation use {@link isPropertyDescriptor}.
@ganuz/is-data-descriptor/assert
Module
import {
default as assertDataDescriptor
} from '@ganuz/is-data-descriptor/assert';
Browser
<script src="https://unpkg.com/@ganuz/is-data-descriptor/assert/bundle.umd.min.js"></script>
let {
assertDataDescriptor
} = G;
Examples
assertDataDescriptor(undefined); // throw TypeError
assertDataDescriptor('foo'); // throw TypeError
assertDataDescriptor(true); // throw TypeError
assertDataDescriptor({}); // throw TypeError
assertDataDescriptor({value: undefined}); // => {value: undefined}
assertDataDescriptor({writable: true}); // => {writable: true}
assertDataDescriptor({value: 67, get() {}}); // => {value: 67, get() {}}
License
Copyright © Yisrael Eliev, Licensed under the MIT license.