# A numerikus rendszer határait ellenőrizze, ahelyett, hogy teljes kötelezettséget vállalna

> Ellenőrizze az Int, a SmallInt, a TinyInt és a Number2 indiai kompakt rendszereket, beleértve a frakciós értékeket, a nullát és az out-of-range beviteleit.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: hu
Content-SHA256: da196d5256c10d1ffb74b1986e1af3a36afc8ba360e468036abe9488428e5de6
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

A `total5@0.0.19`, a kompakt számtípusok mind megjelennek a szülőszám validátor. **`Int` Nem garantálja az egészet*: `7.9` megőrzött volt. `Number2` Ez a frakció továbbra is megmarad; ne értelmezze a nevét, mint két tízszeres helyre.

A `TinyInt` 0 és 255 közötti értékeket fogad el. A `SmallInt` -32767 és 32767 közöttieket; különösen a -32768 elutasításra kerül ebben a verzióban. Ezek az altípus-ellenőrzések határokat érvényesítenek, de nem követelnek egész értékeket: a `TinyInt` elfogadja az `1.5`-öt. Azonosítókhoz, számlálókhoz vagy mennyiségekhez, amelyeknek egésznek kell lenniük, alkalmazzon kifejezett `Number.isInteger()` ellenőrzést. Ezek a megfigyelések ezt a verziót és a tesztelt értékeket írják le, nem az SQL-oszlopok szemantikáját.

```js controllers/numbers.js
var schema = NEWSCHEMA('NumericBoundaries', '*integer:Int,*small:SmallInt,*tiny:TinyInt,*decimal:Number2');

exports.install = function() {
	ROUTE('POST /numbers/ @json', numbers);
};

function numbers($) {
	var result = schema.transform($.body);
	if (result.error) {
		$.response.status = 400;
		$.json({ error: 'invalid numeric input' });
		return;
	}
	$.json(result.response);
}
```
