String.prototype.charCodeAt()‎

من موسوعة حسوب
مراجعة 15:41، 28 يناير 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

الدالة String.prototype.charCodeAt()‎ تُعيد عددًا صحيحًا بين 0 و 65535 يُمثِّل رمز UTF-16 للمحرف الموجود عند الفهرس المُعيّن (لاحظ أنَّ رمز UTF-16 سيُطابِق رمز المحرف القابل للتمثيل كمحرف واحد في UTF-16، لكن سيُطابِق أوّل قسم من زوجَيّ الرموز للمحارف التي لا يمكن تمثيلها كرمز واحد في UTF-16 مثل رموز يونيكود الأكبر من 0x10000). إذا أردَت الحصول على كامل قيمة الرمز فاستخدم الدالة codePointAt()‎.

البنية العامة

str.charCodeAt(index)

index

عدد صحيح بين 0 و length -1. وإذا لم توفَّر قيمة لهذا الوسيط، فالقيمة الافتراضية هي 0، لذا سيُعاد أوّل محرف في السلسلة النصية.

القيمة المعادة

قيمة عددية تُمثِّل رمز المحرف الموجود عند الفهرس المُحدَّد بترميز UTF-16، وإذا كانت قيمة الوسيط index خارج المجال المتاح فستُعاد القيمة NaN.

الوصف

لاحظ أنَّ الدالة charCodeAt()‎ ستُعيد قيمةً أقل من 65536 دومًا، وهذا لأنَّ المحارف التي رموزها أكبر من الرقم السابق ستُمثَّل على شكل زوجين من الرموز اللذَين يُشكِّلان المحرف النهائي. وبسبب ذلك، يجب أن نحصل على قيمة charCodeAt(i)‎ و charCodeAt(i+1)‎ عند التعامل مع تلك المحارف (كما لو أننا نتعامل مع محرفين).

ستُعيد الدالة charCodeAt()‎ القيمة NaN إذا كان الفهرس المعطي أقل من 0 أو أكبر أو يساوي الطول الكلي (length) للسلسلة النصية.

أمثلة

استخدام الدالة charCodeAt()‎

المثال الآتي يُعيد القيمة 65 وهي قيمة رمز يونيكود للحرف A:

'ABC'.charCodeAt(0); // 65

دعم المتصفحات

الميزة Chrome Firefox Internet Explorer Opera Safari
الدعم الأساسي نعم نعم نعم نعم نعم

مصادر ومواصفات