String.prototype.normalize()
< JavaScript | String
الدالة String.prototype.normalize()
تُعيد صيغة Unicode Normalization Form للسلسلة النصية المعطاة.
البنية العامة
str.normalize([form])
form
إحدى القيم "NFC"
أو "NFD"
أو "NFKC"
أو "NFKD"
، التي تُحدِّد صيغة Unicode Normalization Form، وإذا لم تُحدَّد أو كانت undefined
فستُستخدَم القيمة "NFC"
:
NFC
— Normalization Form Canonical Composition.NFD
— Normalization Form Canonical Decomposition.NFKC
— Normalization Form Compatibility Composition.NFKD
— Normalization Form Compatibility Decomposition.
القيمة المعادة
سلسلة نصية تحتوي على صيغة Unicode Normalization Form من السلسلة النصية المعطاة.
الاستثناءات
سيُرمى الاستثناء RangeError
إذا لم تكن قيمة الوسيط form
من بين القيم المذكورة أعلاه.
أمثلة
استخدام normalize()
// Initial string
// U+1E9B: LATIN SMALL LETTER LONG S WITH DOT ABOVE
// U+0323: COMBINING DOT BELOW
var str = '\u1E9B\u0323';
// Canonically-composed form (NFC)
// U+1E9B: LATIN SMALL LETTER LONG S WITH DOT ABOVE
// U+0323: COMBINING DOT BELOW
str.normalize('NFC'); // '\u1E9B\u0323'
str.normalize(); // same as above
// Canonically-decomposed form (NFD)
// U+017F: LATIN SMALL LETTER LONG S
// U+0323: COMBINING DOT BELOW
// U+0307: COMBINING DOT ABOVE
str.normalize('NFD'); // '\u017F\u0323\u0307'
// Compatibly-composed (NFKC)
// U+1E69: LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE
str.normalize('NFKC'); // '\u1E69'
// Compatibly-decomposed (NFKD)
// U+0073: LATIN SMALL LETTER S
// U+0323: COMBINING DOT BELOW
// U+0307: COMBINING DOT ABOVE
str.normalize('NFKD'); // '\u0073\u0323\u0307'
دعم المتصفحات
الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
الدعم الأساسي | نعم | نعم | نعم | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft.
- معيار ECMAScript 2015 (6th Edition).