1234567891011121314151617181920212223242526272829 |
- /*!
- * is-natural-number.js | MIT (c) Shinnosuke Watanabe
- * https://github.com/shinnn/is-natural-number.js
- */
- export default function isNaturalNumber(val, option) {
- if (option) {
- if (typeof option !== 'object') {
- throw new TypeError(
- String(option) +
- ' is not an object. Expected an object that has boolean `includeZero` property.'
- );
- }
- if ('includeZero' in option) {
- if (typeof option.includeZero !== 'boolean') {
- throw new TypeError(
- String(option.includeZero) +
- ' is neither true nor false. `includeZero` option must be a Boolean value.'
- );
- }
- if (option.includeZero && val === 0) {
- return true;
- }
- }
- }
- return Number.isSafeInteger(val) && val >= 1;
- }
|