خريطة مقابل كائن في جافا سكريبت

Khrytt Mqabl Kayn Fy Jafa Skrybt



' خريطة ' و ' هدف 'هما هيكلان شائعان للبيانات في جافا سكريبت يستخدمان لتخزين أزواج المفتاح والقيمة. يتم استخدام الخريطة عندما تحتاج إلى بنية بيانات يمكنها تخزين أي نوع بيانات كمفتاح أو قيمة وتحتاج إلى مجموعة مرتبة من أزواج المفتاح والقيمة. بينما يتم استخدام الكائن عندما تحتاج فقط إلى تخزين مفاتيح السلسلة.

سيشرح هذا المنشور الفرق بين الخريطة والكائن في جافا سكريبت.

كيفية تحديد كائن في JavaScript؟

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







بناء الجملة



يمكن إنشاء كائن باستخدام أقواس {} التدوين الحرفي للكائن أو مُنشئ الكائن. باستخدام الترميز الحرفي أو الأقواس ، استخدم بناء الجملة أدناه:



مقدار ثابت هدف = {
مفتاح : قيمة،
مفتاح : قيمة
}

إنشاء كائن باستخدام منشئ الكائن أو ' جديد 'الكلمة الرئيسية ، استخدم البنية التالية:





مقدار ثابت هدف = جديد هدف ( ) ؛

هدف. مفتاح = قيمة ؛

ملحوظة: ضع في اعتبارك أن مفاتيح أو أسماء خصائص الكائن يجب أن تكون سلسلة.

مثال 1: إنشاء كائن باستخدام التدوين الحرفي في JavaScript

في المثال التالي ، سننشئ كائنًا يسمى ' stdObject 'باستخدام التدوين الحرفي أو الأقواس:



var stdObject = {
اسم : 'جون' و
عمر : 18 و
رولنو : 25 و
معيار : 9
}

اطبع الكائن على وحدة التحكم:

وحدة التحكم. سجل ( stdObject ) ؛

انتاج |

مثال 2: إنشاء كائن باستخدام منشئ الكائن في JavaScript

هنا ، سننشئ كائنًا باستخدام مُنشئ الكائن باستخدام ' جديد 'الكلمة الرئيسية:

مقدار ثابت stdObject = جديد هدف ( ) ؛

الآن ، أضف الخصائص (قيمة المفتاح) للكائنات باستخدام تدوين النقطة (.):

stdObject. اسم = 'اللعنة' ؛

stdObject. عمر = 19 ؛

stdObject. رولنو = خمسة عشر ؛

stdObject. معيار = 10 ؛

أخيرًا ، اعرض الكائن على وحدة التحكم باستخدام ' console.log () ' طريقة:

وحدة التحكم. سجل ( stdObject ) ؛

انتاج |

كيفية تحديد الخريطة في JavaScript؟

في جافا سكريبت ، ' خريطة 'عبارة عن بنية بيانات تحتوي على أزواج مفتاح - قيمة مشابهة للكائن. يسمح لك بربط البيانات بالمفاتيح واسترداد البيانات لاحقًا باستخدام المفاتيح. يمكن استخدام الخرائط لتنفيذ القواميس وجداول التجزئة وهياكل البيانات الأخرى التي تعين المفاتيح للقيم.

بناء الجملة

لتهيئة خريطة ، استخدم الصيغة التالية:

مقدار ثابت خريطة = جديد خريطة ( [

[ 'مفتاح' و 'قيمة' ] و

[ 'مفتاح' و 'قيمة' ]

] ) ؛

يمكنك أيضًا إنشاء خريطة باستخدام مُنشئ الخريطة أو باستخدام عامل التشغيل الجديد ، وتعيين القيم باستخدام ' تعيين() ' طريقة:

مقدار ثابت خريطة = جديد خريطة ( ) ؛

خريطة. تعيين ( 'مفتاح' و 'قيمة' ) ؛

مثال: قم بإنشاء خريطة في JavaScript

في المثال المعطى ، سننشئ خريطة باستخدام كلا الصيغتين.

قم بإنشاء خريطة باستخدام طريقة التهيئة. هنا ، سنقوم بتعيين المفاتيح كسلسلة بينما يمكنك تعيين المفاتيح في الخريطة بأي نوع:

مقدار ثابت mapStd = خريطة جديدة ( [
[ 'اسم' و 'جون' ] و
[ 'عمر' و 18 ] و
[ 'رولينو' و 25 ] و
[ 'معيار' و 9 ] و
] ) ؛

أو قم بإنشاء خريطة عن طريق استدعاء مُنشئ الخريطة أو الكلمة الأساسية / عامل التشغيل الجديد:

مقدار ثابت mapStd = جديد خريطة ( ) ؛

قم بتعيين القيم في الخريطة في زوج ذي قيمة رئيسية باستخدام ' تعيين() ' طريقة:

mapStd. تعيين ( 'اسم' و 'جون' ) ؛

mapStd. تعيين ( 'عمر' و 18 ) ؛

mapStd. تعيين ( 'رولينو' و 25 ) ؛

mapStd. تعيين ( 'معيار' و 9 ) ؛

لطباعة الخريطة على وحدة التحكم ، استخدم ' إدخالات () 'مع' مقابل ' حلقة:

ل ( مقدار ثابت [ مفتاح القيمة ] من mapStd. إدخالات ( ) ) {

وحدة التحكم. سجل ( `$ { مفتاح } : $ { قيمة } ' ) ؛

}

أو للوصول إلى قيمة أي مفتاح / خاصية معينة ، استخدم ' يحصل() ' طريقة:

وحدة التحكم. سجل ( 'رولينو' + mapStd. يحصل ( 'اسم' ) + ' يكون ' + mapStd. يحصل ( 'رولينو' ) ) ؛

يشير الإخراج إلى جميع خصائص الخريطة وقيمة الخاصية المحددة:

خريطة مقابل كائن في جافا سكريبت

الفرق الأساسي بين الخريطة والكائن هو كما يلي:

خريطة هدف
تم تقديمه في ECMAScript 6 في عام 2015. قدمت JavaScript نوع بيانات الكائن في نسختها الأولى (ECMAScript 1) التي تم إصدارها في عام 1997.
تسمح الخريطة بالمفاتيح من أي نوع بيانات (على سبيل المثال ، الكائنات ، الوظائف ، الأرقام ، إلخ). يجب أن تكون مفاتيح الكائن سلاسل.
يمكن الوصول إلى خصائص الخريطة باستخدام طريقة get (). يمكن الوصول إلى خصائص الكائن باستخدام التدوين النقطي أو تدوين الأقواس المربعة.
تحتوي الخريطة على خاصية حجم مضمنة لإرجاع عدد أزواج المفتاح والقيمة لا يحتوي الكائن على هذه الميزة.
الخريطة قابلة للتكرار. يسمح بالتكرار عبر جميع أزواج قيمة المفتاح باستخدام بعض الطرق المضمنة مثل forEach () ، والمفاتيح () ، والقيم () ، والإدخالات (). الكائن غير قابل للتكرار. هناك حاجة لاستخدام حلقات 'for-in' أو طريقة Object.entries () لتكرار أزواج المفتاح والقيمة.
تم ترتيب الخريطة. الكائن غير مرتب.

عند العمل مع مجموعات البيانات الصغيرة ، يكون اختلاف الأداء بين الخرائط والكائنات ضئيلًا ، ولكن عند العمل مع مجموعات بيانات أكبر ، يمكن أن تكون الخرائط أسرع لأنها مُحسَّنة للأداء.

متى تفضل الخريطة على الكائنات في JavaScript؟

عندما تحتاج إلى تخزين أزواج مفتاح القيمة في نموذج مرتب أو القيمة كمفتاح تكون أي نوع بيانات ، مثل الأرقام أو الكائنات أو الرموز ، استخدم ' خريطة 'بنية البيانات. سيتم استخدام الكائنات عندما تحتاج إلى استخدام السلاسل كمفاتيح وعندما لا تحتاج إلى أي من ميزات الخرائط. الفرق في الأداء بين الخرائط والكائنات ضئيل أثناء العمل مع مجموعات بيانات صغيرة ، ولكن عند العمل مع مجموعات بيانات أكبر ، يمكن أن تكون الخرائط أسرع لأنها محسّنة للأداء.

خاتمة

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