ืฉื™ืžื•ืฉ ื‘ื“ืžื•ื™ื•ืช Unicode ื“ื•ืžื•ืช ื›ื“ื™ ืœืขืงื•ืฃ ืื™ืžื•ืช

GitHub ืคื ื” ืจื’ื™ืฉ ืœื”ืชืงืคื” ื”ืžืืคืฉืจืช ืœืš ืœืชืคื•ืก ื’ื™ืฉื” ืœื—ืฉื‘ื•ืŸ ื‘ืืžืฆืขื•ืช ืžื ื™ืคื•ืœืฆื™ื” ืฉืœ ืชื•ื•ื™ Unicode ื‘ื“ื•ื"ืœ. ื”ื‘ืขื™ื” ื”ื™ื ืฉื—ืœืง ืžืชื•ื•ื™ Unicode, ื›ืืฉืจ ืžืฉืชืžืฉื™ื ื‘ืคื•ื ืงืฆื™ื•ืช ื”ื”ืžืจื” ื‘ืื•ืชื™ื•ืช ืงื˜ื ื•ืช ืื• ืจื™ืฉื™ื•ืช, ืžืชื•ืจื’ืžื™ื ืœืชื•ื•ื™ื ืจื’ื™ืœื™ื ื”ื“ื•ืžื™ื ื‘ืกื’ื ื•ืŸ (ื›ืืฉืจ ืžืกืคืจ ืชื•ื•ื™ื ืฉื•ื ื™ื ืžืชื•ืจื’ืžื™ื ืœืชื• ืื—ื“ - ืœืžืฉืœ, ื”ืชื• ื”ื˜ื•ืจืงื™ "ฤฑ" ื•-"i " ื›ืืฉืจ ืžื•ืžืจื™ื ืœืื•ืชื™ื•ืช ื’ื“ื•ืœื•ืช ืžื•ืžืจื™ื ืœ"ืื ื™").

ืœืคื ื™ ื‘ื“ื™ืงืช ืคืจืžื˜ืจื™ ื”ืชื—ื‘ืจื•ืช ื‘ืฉื™ืจื•ืชื™ื ื•ื™ื™ืฉื•ืžื™ื ืžืกื•ื™ืžื™ื, ื ืชื•ื ื™ื ืฉืกื•ืคืงื• ืขืœ ื™ื“ื™ ื”ืžืฉืชืžืฉ ืžื•ืžืจื™ื ืชื—ื™ืœื” ืœืื•ืชื™ื•ืช ื’ื“ื•ืœื•ืช ืื• ืงื˜ื ื•ืช ื•ืœืื—ืจ ืžื›ืŸ ื ื‘ื“ืงื™ื ื‘ืžืกื“ ื”ื ืชื•ื ื™ื. ืื ืฉื™ืจื•ืช ืžืืคืฉืจ ืฉื™ืžื•ืฉ ื‘ืชื•ื•ื™ unicode ื‘ื›ื ื™ืกื” ืื• ื‘ืžื™ื™ืœ, ืื–ื™ ืชื•ืงืฃ ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ืชื•ื•ื™ unicode ื“ื•ืžื™ื ื›ื“ื™ ืœื‘ืฆืข ืชืงื™ืคื” ืฉืžืชืžืจื ืช ื”ืชื ื’ืฉื•ื™ื•ืช ื‘-Unicode Case Mapping Collisions.

'รŸ'.toUpperCase() == 'ss'.toUpperCase() // 0x0131
'K'.toLowerCase() == 'K'.toLowerCase() // 0x212A
'John@Gฤฑthub.com'.toUpperCase() == '[ืžื•ื’ืŸ ื‘ื“ื•ื"ืœ]'.toUpperCase()

ืชื•ืงืฃ ื‘-GitHub ื™ื›ื•ืœ ื“ืจืš ื”ื˜ื•ืคืก ืœืฉื—ื–ื•ืจ ืกื™ืกืžื” ืฉื ืฉื›ื—ื”, โ€‹โ€‹ื”ืชื—ืœ ืฉืœื™ื—ืช ืงื•ื“ ืฉื—ื–ื•ืจ ืœืžื™ื™ืœ ืื—ืจ ืขืœ ื™ื“ื™ ืฆื™ื•ืŸ ื‘ื˜ื•ืคืก ื›ืชื•ื‘ืช ื”ื›ื•ืœืœืช ืชื• unicode ื”ื’ื•ืจื ืœื”ืชื ื’ืฉื•ืช (ืœื“ื•ื’ืžื”, ื‘ืžืงื•ื [ืžื•ื’ืŸ ื‘ื“ื•ื"ืœ] ื”ื•ื’ื“ืจ ืื™ืžื™ื™ืœ mฤฑ[ืžื•ื’ืŸ ื‘ื“ื•ื"ืœ]). ื”ื›ืชื•ื‘ืช ืขื‘ืจื” ืืช ื”ื‘ื“ื™ืงื” ื›ื™ ื”ื™ื ื”ื•ืžืจื” ืœืื•ืชื™ื•ืช ืจื™ืฉื™ื•ืช ื•ื”ืชืื™ืžื” ืœื›ืชื•ื‘ืช ื”ืžืงื•ืจื™ืช ([ืžื•ื’ืŸ ื‘ื“ื•ื"ืœ] ), ืืš ื‘ืขืช ืฉืœื™ื—ืช ื”ืžื›ืชื‘ ื”ื•ื ื”ื•ื—ืœืฃ ื›ืคื™ ืฉื”ื•ื ื•ืงื•ื“ ื”ืฉื—ื–ื•ืจ ื ืฉืœื— ืœื›ืชื•ื‘ืช ืžื–ื•ื™ืคืช (ืžฤฑ[ืžื•ื’ืŸ ื‘ื“ื•ื"ืœ]).

ื—ืœืง ืž ัะธะผะฒะพะปะพะฒ, ื’ื•ืจื ืœื”ืชื ื’ืฉื•ื™ื•ืช ื‘ืขืช ื”ืžืจืช ืื•ื’ืจ:

รŸ 0x00DF SS
ืื ื™ 0x0131 ืื ื™
ลฟ 0x017F S
๏ฌ€ 0xFB00 FF
๏ 0xFB01 FI
fl 0xFB02 FL
๏ฌƒ 0xFB03 FFI
๏ฌ„ 0xFB04 FFL
๏ฌ… 0xFB05 ST
๏ฌ† 0xFB06 ST
K 0x212A k

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”