[1] [DFN[[RUBYB[整数]@en[integer]]]]は、[[自然数]]、[[0]]、または[[自然数]]に [[-1]] を掛けた[[数]]です。

[7] [[整数]]は、しばしば[[無限集合]]である[[数学]]的な[[整数]]ではなく、
[[文字]]や[[浮動小数点数]]とは異なった、[[整数]]を表すための[[データ型]]である[[数値型]]によって表現されるもののことを指します。
この場合の[[整数]]は、[[有限集合]]です。

;; [[データ型]]であることを明示するため[DFN[[[整数型]]]]といいます。

* 仕様書

[REFS[
- [8] [CITE@en[URL Standard]] ([TIME[2016-02-15 18:33:32 +09:00]] 版) <https://url.spec.whatwg.org/#serialize-an-integer>
]REFS]

* 記号

[2] [[整数]]全体の[[集合]]は、しばしば [DFN[𝐙]] 
([[太字]]の [[Z]])
と記述されます。

* MathML における定義

[3] [[MathML]] における [DFN[[CODE[integer]]]] は、[CODE(char)[[[-]]]] があるかまたはないかの後に
[CODE[[[decimal-digit]]]] が複数続く[[文字列]]で、[[整数]]を表します。

;; [CITE[MathML Fundamentals]] ([TIME[2010-10-21 05:51:46 +09:00]] 版) <http://www.w3.org/TR/2010/REC-MathML3-20101021/chapter2.html#type.integer>

** 関連

[4] [CODE[[[unsigned-integer]]]]、[CODE[[[positive-integer]]]] は [CODE[[[integer]]]]
の[[部分集合]]です。

* 直列化

[9] [DFN[[RUBYB[整数の直列化]@en[serialize an integer]]]]は、
可能な限り短い[[十進数]]として表現することをいいます [SRC[>>8]]。

;; [10] [[URL]]や[[起源]]の[F[ポート]]の[[直列化]]でこの定義が使われます。

* 演算

[FIG(short list)[ [16] [[整数]]に対する[[演算]]
- [[整数除算]]
- [[剰余]]
]FIG]

* 部分集合

[FIG(short list)[ [14] [[整数]]の[[部分集合]]
- [[非負整数]]
- [[自然数]]
- [[正整数]]
- [[負整数]]
- [[偶数]]
- [[奇数]]
- [[素数]]
]FIG]

* 応用

[FIG(short list)[ [15] [[整数]]の[[応用]]
- [[整数論]]
- [[整数時刻系]]
- [[一般化可変長整数]]
]FIG]

* 歴史

[5] [CITE[Basic Data Types and Interfaces – SVG 1.1 (Second Edition)]]
( ([TIME[2011-08-10 12:35:27 +09:00]] 版))
<http://www.w3.org/TR/2011/REC-SVG11-20110816/types.html#DataTypeInteger>

[6] [CITE['''['''whatwg''']''' Discrepancies between HTML and ES rules for parsing an integer or float]]
([TIME[2012-01-24 09:35:06 +09:00]] 版)
<http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-January/034479.html>

[11] [CITE@ja[ほとんど整数 - Wikipedia]]
( ([TIME[2016-07-28 17:53:56 +09:00]]))
<https://ja.wikipedia.org/wiki/%E3%81%BB%E3%81%A8%E3%82%93%E3%81%A9%E6%95%B4%E6%95%B0>

[12] [CITE@en[Refactor integer conversion in ES bindings. (#235)]]
([[tobie]]著, [TIME[2016-11-12 09:16:39 +09:00]])
<https://github.com/heycam/webidl/commit/1bb4774e48acdf8bfaf32a56bfc03d5e32bd69ed>

[13] [CITE@en[Carry out math operations on real numbers, not IEEE 754. (#316)]]
([[tobie]]著, [TIME[2017-02-23 04:43:17 +09:00]])
<https://github.com/heycam/webidl/commit/6b2bbb3f5ec5c310fe42756554d5532c745f1b1f>

[17] [CITE@en[Allow Range header to be set by APIs]]
([[jakearchibald]]著, [TIME[2018-05-30 02:00:06 +09:00]])
<https://github.com/whatwg/fetch/commit/819d8c9d6617986a831ecd9cf21c34ba9589a890>