Propriété de version
Embed This Widget
Add the script tag and a data attribute to embed this widget.
Embed via iframe for maximum compatibility.
<iframe src="https://unicodefyi.com/iframe/glossary/age-property/" width="420" height="400" frameborder="0" style="border:0;border-radius:10px;max-width:100%" loading="lazy"></iframe>
Paste this URL in WordPress, Medium, or any oEmbed-compatible platform.
https://unicodefyi.com/glossary/age-property/
Add a dynamic SVG badge to your README or docs.
[](https://unicodefyi.com/glossary/age-property/)
Use the native HTML custom element.
La version Unicode dans laquelle un caractère a été assigné pour la première fois. Utile pour déterminer la compatibilité d'un caractère selon les systèmes et versions logicielles.
What Is the Age Property?
The Age property records the Unicode version in which a character was first assigned a code point. This property allows developers and researchers to determine which version of Unicode introduced a particular character—essential for compatibility testing, font planning, and detecting whether a string contains characters newer than a supported Unicode version.
Age values are version strings like 1.1, 2.0, 3.0, ..., 15.1. A code point that has never been assigned has an implied age of Unassigned. The property is immutable: a character's Age never changes once assigned, even if its properties (name, category) are later corrected.
Checking Age in Python
Python's unicodedata module does not expose Age directly, but the unicodedata.unidata_version string tells you which Unicode version the module implements. To check a character's introduction version you can use the unicodedata module's character lookup or a third-party library:
import unicodedata
import sys
# The Unicode version Python's unicodedata module implements
print(unicodedata.unidata_version) # e.g., "15.1.0"
print(sys.version)
# For Age lookups, use the 'unicodedata2' or 'unicodedataplus' package
# pip install unicodedataplus
try:
import unicodedataplus as udp
for char in ["A", "€", "😀", "\U0001F600"]:
age = udp.age(char)
name = unicodedata.name(char, "<unnamed>")
print(f" U+{ord(char):04X} Age={age:6} {name}")
except ImportError:
print("Install unicodedataplus for Age support")
# U+0041 Age=1.1 LATIN CAPITAL LETTER A
# U+20AC Age=2.1 EURO SIGN
# U+1F600 Age=6.1 GRINNING FACE
Why Age Matters
Emoji support timelines: Emoji characters have been added across many Unicode versions. Age tells you whether a character requires Unicode 6.0+ (face emoji), 8.0+ (skin tone modifiers), or 13.0+ (newer additions). Mobile operating systems typically lag Unicode releases by 12–24 months.
Legacy system compatibility: A database or file format limited to Unicode 3.0 cannot store CJK Extension B characters (added in 4.1) or any emoji. Age detection lets you validate input against a maximum supported version.
Font auditing: Font engineers use Age to prioritize glyph development—newer characters with high Age values may not yet be covered by commonly deployed fonts.
Notable Age Milestones
| Version | Year | Notable Additions |
|---|---|---|
| 1.1 | 1993 | Latin, Greek, Cyrillic, CJK core, Hebrew, Arabic |
| 2.1 | 1998 | Euro sign €, many combining marks |
| 4.1 | 2005 | CJK Extension B (42,711 characters) |
| 6.0 | 2010 | Emoji (first large batch, 722 characters) |
| 8.0 | 2015 | Skin tone modifiers |
| 13.0 | 2020 | 55 new emoji, Chorasmian, Yezidi scripts |
| 15.1 | 2023 | Latest release |
Quick Facts
| Property | Value |
|---|---|
| Unicode property name | Age |
| Type | Enumerated (version string) |
| Python built-in | No (use unicodedataplus or regex package) |
| Immutability | Age never changes after assignment |
| Unassigned value | Unassigned (implied) |
| Spec reference | Unicode Standard Annex #44, DerivedAge.txt |
Termes associés
Plus dans Propriétés
Noms alternatifs pour les caractères, les noms Unicode ne pouvant pas changer …
Plage contiguë nommée de points de code (par ex. Basic Latin = …
Propriété déterminant le comportement d'un caractère dans un texte bidirectionnel (LTR, RTL, …
Classification de chaque point de code dans l'une des 30 catégories (Lu, …
Valeur numérique (0–254) contrôlant l'ordre des marques combinantes lors de la décomposition …
Règles de conversion des caractères entre majuscules, minuscules et casse de titre. …
La décomposition d'un caractère en ses éléments constitutifs. La décomposition canonique préserve …
Unicode property (UAX#11) classifying characters as Narrow, Wide, Fullwidth, Halfwidth, Ambiguous, or …
Le « caractère » perçu par l'utilisateur — ce qui ressemble à …
Caractères ne devant avoir aucun effet visible et pouvant être ignorés par …