String.fromCharCode()
الدالة String.fromCharCode()
الساكنة (static) تُعيد سلسلةً نصيةً مُنشَأةً باستخدام سلسلة من قيم محارف يونيكود.
البنية العامة
String.fromCharCode(num1[, ...[, numN]])
num1, ..., numN
سلسلة من الأرقام التي تُمثِّل قيم محارف يونيكود (Unicode values). المجال المسموح يقع بين 0 و 65535 (أي 0xFFFF)، والأرقام الأكبر من 0xFFFF سيُقتَطع جزءٌ منها.
القيمة المعادة
سلسلة نصية تحتوي على محارف ترتبط بقيم يونيكود المُمرَّرة إلى الدالة.
الوصف
هذه الدالة تُعيد سلسلةً نصيةً أوليّةً ولا تُعيد كائن String
.
لمّا كانت الدالة fromCharCode
هي دالةٌ ساكنة (static method) تابعةٌ للكائن String
، فيجب عليك استخدامها دومًا بالشكل String.fromCharCode()
، إذ لا تستطيع استخدامها كجزء من كائن String
خاص بك.
أمثلة
المثال الآتي يُبيّن استخدام الدالة fromCharCode()
:
String.fromCharCode(65, 66, 67); // "ABC"
String.fromCharCode(0x2014) // "—"
String.fromCharCode(0x12014) // "—" سيتم تجاهل المحرف 1
التعامل مع القيم الأكبر من الحد الأقصى
صحيحٌ أنَّ من الشائع تمثيل قيم يونيكود بمحرف بطول 16-بت (كما كان متوقعًا سابقًا أثناء عملية صياغة معيار JavaScript) وكان بإمكاننا استخدام الدالة fromCharCode()
لإعادة محرف وحيد من أغلبية القيم (أي قيم UCS-2، والتي هي مجموعة فرعية من UTF-16 فيها أكثر المحارف شيوعًا).
أما للتعامل مع جميع قيم يونيكود الصالحة (تصل حتى 21 بت)، فلن يكون استخدام الدالة fromCharCode()
وحدها مناسبًا، ذلك لأنَّ المحارف التي لها قيم كبيرة تستخدم رقمين لتمثيل المحرف الواحد؛ لذا يمكن استخدام الدالة String.fromCodePoint()
(وهي جزءٌ من معيار ECMAScript 2015 أي ES6) لإعادة مثل هذه الأزواج، مما يسمح بتمثيل المحارف التي لها قيم أكبر من الحد الأقصى.
دعم المتصفحات
الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
الدعم الأساسي | نعم | نعم | نعم | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft.
- معيار ECMAScript 2015 (6th Edition).
- معيار ECMAScript 5.1.
- معيار ECMAScript 1st Edition .