Köhnəlmiş Simvol Sayğacları Niyə Müasir Unicode, Emojilər və Çoxskriptli Mətndə Sıradan Çıxır
2010-cu illərin əvvəllərində yaradılmış köhnəlmiş simvol sayğacları kimi birinci nəsil veb utilitləri JavaScript-in ilkin `String.prototype.length` xassəsinə güvənirlər. JavaScript daxili olaraq sətirləri UTF-8 kod vahidlərindən istifadə edərək kodlaşdırdığından, Əsas Çoxdilli Müstəvidən (BMP) kənarda olan hər hansı bir simvol - o cümlədən müasir emojilər, riyazi simvollar və nadir CJK ideoqramları - 2 kod vahidindən ibarət surroqat cütlüyü kimi təmsil olunur. Bundan əlavə, ailə ikonları və ya dəri tonu modifikatorları kimi Sıfır Genişlikli Birləşdiricilər (`U+200D`) vasitəsilə birləşdirilmiş kompozit emojilər köhnəlmiş sayğaclarda 5-dən 11-ə qədər simvol kimi qeydiyyatdan keçə bilər ki, bu da sosial media və verilənlər bazasının uzunluq oxunuşlarında qeyri-dəqiqliyə səbəb olur.
Multinook W3C və ECMA-402 `Intl.Segmenter` standartını qrafem klaster səviyyəsində tətbiq etməklə yanaşı, UTF-8 `TextEncoder` bayt axını təhlilçisi ilə bu memarlıq qüsurunu həll edir. İstifadəçi tərəfindən qəbul edilən hər bir simvol 100% dəqiqliklə sayılır, eyni zamanda proqram mühəndisləri və texniki yazıçılar üçün xam UTF-8 bayt izini və kod vahidi metrikalarını təqdim edir.

