"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكنني تحديد حجم البايت لسلسلة جافا سكريبت؟

كيف يمكنني تحديد حجم البايت لسلسلة جافا سكريبت؟

تم النشر بتاريخ 2024-11-04
تصفح:494

How Can I Determine the Byte Size of a JavaScript String?

حساب حجم سلسلة جافا سكريبت بالبايت

يدور السؤال حول تحديد حجم سلسلة جافا سكريبت بالبايت. من خلال سلسلة مشفرة UTF-8 تم استلامها من الخادم بقياس 500 كيلو تقريبًا، يستكشف الاستعلام العوامل التي تؤثر على حجم السلسلة، بما في ذلك استخدام UCS-2 في JavaScript، والاختلافات المحتملة في تطبيقات JavaScript، وتأثير تشفير الصفحة أو نوع المحتوى .

تحديد حجم السلسلة في جافا سكريبت

للحصول على حجم السلسلة بالبايت، يمكن استخدام كائن Blob. يأخذ مُنشئ Blob مصفوفة تحتوي على السلسلة المراد قياسها. توفر خاصية size لكائن Blob الناتج الحجم بالبايت.

أمثلة لحساب حجم سلسلة جافا سكريبت

لأغراض التوضيح، فيما يلي بعض الأمثلة على السلسلة الأحجام المحسوبة باستخدام كائن Blob:

console.info( new Blob(['?']).size, // 4 new Blob(['?']).size, // 4 new Blob(['؟؟']).size, // 8 new Blob(['؟؟']).size, // 8 new Blob(['أنا سلسلة']).size, // 12 // من تصحيح Premasagar لإجابة لوري لـ // السلاسل التي تحتوي على أحرف وحيدة في نطاق الزوج البديل: // https://stackoverflow.com/a/39488643/6225838 new Blob([String.fromCharCode(55555)]).الحجم، // 3 new Blob([String.fromCharCode(55555, 57000)]).الحجم // 4 (وليس 6) );
console.info(
  new Blob(['?']).size,                             // 4
  new Blob(['?']).size,                             // 4
  new Blob(['??']).size,                           // 8
  new Blob(['??']).size,                           // 8
  new Blob(['I\'m a string']).size,                  // 12

  // from Premasagar correction of Lauri's answer for
  // strings containing lone characters in the surrogate pair range:
  // https://stackoverflow.com/a/39488643/6225838
  new Blob([String.fromCharCode(55555)]).size,       // 3
  new Blob([String.fromCharCode(55555, 57000)]).size // 4 (not 6)
);
عوامل إضافية يجب مراعاتها

بينما تستخدم JavaScript UCS-2 بشكل أساسي، قد تنحرف بعض التطبيقات عن هذا المعيار. بالإضافة إلى ذلك، يمكن أن يؤثر ترميز الصفحة ونوع المحتوى على تمثيل حجم السلسلة. من المهم التحقق من تطبيق JavaScript وبيئة المتصفح المحددة بحثًا عن أي اختلافات محتملة.

بيان الافراج أعيد طبع هذه المقالة على: 1729293498 في حالة وجود أي مخالفة، يرجى التواصل مع [email protected] لحذفها
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3