أساسيات جافا سكريبت مقابل الكائنات: توضيح الفكرة
على الرغم من التصور الشائع بأن "كل شيء تقريبًا في جافا سكريبت هو كائن،" ليس كل شيء الكيانات في اللغة تلتزم بهذا التعريف. هذا التمييز بين البدائيات والكائنات يستحق التوضيح.
البدائيات
على النقيض من الكائنات، البدائيات هي قيم ثابتة موجودة في شكلها الأساسي. وهي تفتقر إلى الأساليب والخصائص، وتتضمن أنواع البيانات مثل:تحتوي العناصر الأولية على أغلفة كائنات مقابلة (سلسلة، رقم، منطقية) توفر الأساليب والخصائص. ومع ذلك، فإن البدائيين أنفسهم ليسوا كائنات. للتفاعل مع خصائص البدائية، تقوم جافا سكريبت ضمنيًا بإنشاء كائن مجمّع للعملية.
مثال مع السلاسل
ضع في اعتبارك مقتطف التعليمات البرمجية أدناه:
var s = "foo"; فار الفرعية = s.substring(1, 2); // sub هي الآن السلسلة "o"تنفذ Javascript داخليًا الخطوات التالية:
var s = "foo"; var sub = s.substring(1, 2); // sub is now the string "o"ينشئ كائن سلسلة مجمّع من s.
يستدعي السلسلة الفرعية ( ) على كائن السلسلة.
var s = "foo"; s.bar = "الجبن"; تنبيه (s.bar)؛ // غير محدد
الوظائف ككائنات
var s = "foo"; s.bar = "cheese"; alert(s.bar); // undefined
function foo() {} foo.bar = "الشاي"; تنبيه (foo.bar)؛ // Tea في الختام، في حين أنه قد يبدو أن البدائيين لديهم سلوك يشبه الكائن، إلا أنهم يختلفون عن الكائنات الحقيقية في Javascript. تسمح أغلفة الكائنات بالتفاعل مع القيم البدائية، لكن البدائية تظل غير قابلة للتغيير. ومع ذلك، فإن الوظائف هي كائنات بالغة الأهمية، وهي كائنات مكتملة قادرة على القيام بجميع قدرات الكائن. يوضح هذا الفهم العلاقة بين الأوليات والكائنات في لغة جافا سكريبت.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3