رموز جافا سكريبت

من السهل اتباع البرنامج التعليمي لفهم رموز جافا سكريبت

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

تم تقديمه فيECMAScript 2015، منذ بضع سنوات فقط.

إنه نوع بيانات غريب للغاية. بمجرد إنشاء رمز ، تظل قيمته خاصة وللاستخدام الداخلي.

كل ما تبقى بعد الخلق هو مرجع الرمز.

يمكنك إنشاء رمز عن طريق استدعاءSymbol()وظيفة المصنع العالمي:

const mySymbol = Symbol()

في كل مرة تستدعيSymbol()نحصل على رمز جديد وفريد من نوعه ، مضمون أن يكون مختلفًا عن جميع الرموز الأخرى:

Symbol() === Symbol() //false

يمكنك تمرير المعلمة إلىSymbol()، وذلك كرمزوصف، مفيد فقط لأغراض التصحيح:

console.log(Symbol()) //Symbol()
console.log(Symbol('Some Test')) //Symbol(Some Test)

غالبًا ما تستخدم الرموز لتحديد خصائص الكائن.

غالبًا لتجنب تضارب الأسماء بين الخصائص ، حيث لا يوجد رمز يساوي آخر.

أو لإضافة خصائص لا يستطيع المستخدم الكتابة فوقها بقصد أو بدون علم.

أمثلة:

const NAME = Symbol()
const person = {
  [NAME]: 'Flavio'
}

person[NAME] //‘Flavio’ const RUN = Symbol() person[RUN] = () => ‘Person is running’ console.log(personRUN) //‘Person is running’

لم يتم تعداد الرموز ، مما يعني أنه لم يتم تضمينها في ملفfor..ofأوfor..inعقدةركض على شيء.

الرموز ليست جزءًا منObject.keys()أوObject.getOwnPropertyNames()نتيجة.

يمكنك الوصول إلى جميع الرموز المخصصة لكائن باستخدام امتدادObject.getOwnPropertySymbols()طريقة.


المزيد من دروس js: