deno.land / x / mongoose@6.7.5 / lib / cast / number.js

نووسراو ببینە
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
'use strict';
const assert = require('assert');
/** * Given a value, cast it to a number, or throw an `Error` if the value * cannot be casted. `null` and `undefined` are considered valid. * * @param {Any} value * @return {Number} * @throws {Error} if `value` is not one of the allowed values * @api private */
module.exports = function castNumber(val) { if (val == null) { return val; } if (val === '') { return null; }
if (typeof val === 'string' || typeof val === 'boolean') { val = Number(val); }
assert.ok(!isNaN(val)); if (val instanceof Number) { return val.valueOf(); } if (typeof val === 'number') { return val; } if (!Array.isArray(val) && typeof val.valueOf === 'function') { return Number(val.valueOf()); } if (val.toString && !Array.isArray(val) && val.toString() == Number(val)) { return Number(val); }
assert.ok(false);};
mongoose

Version Info

Tagged at
a year ago