إذا كنت مطورًا متمرسًا ، فقد تعتقد أن هذا السؤال بسيط ، لكن في بعض الأحيان سنجد هذا السؤال أكثر إثارة للاهتمام.
أولاً ، دعنا نلقي نظرة على تعريف صفيف: "صفيف هو مجرد قائمة بالقيم التي يمكن الوصول إليها باستخدام عدد صحيح كـ" المفتاح ". تبدأ القائمة في 0 وتنتقل من هناك." ، هنا نستخدم الكائنات لوصف تعريف الصفيف:
نسخة الكود كما يلي:
var arr = ["Benjamin" ، "Zuojj"] ؛
// =>
var arr = {
"0": "بنيامين" ،
"1": "Zuojj"
} ؛
بالنظر إلى المثال أعلاه ، أشعر دائمًا أن شيئًا ما مفقودًا ، حسنًا ، طول المصفوفة:
نسخة الكود كما يلي:
var arr = {
"0": "بنيامين" ،
"1": "Zuojj" ،
"الطول": 2
} ؛
نحن نعلم أنه في لغة JavaScript ، فإن الصفيف هو كائن خاص. يمكننا الوصول إلى خصائص الكائن عن طريق الوصول إلى الصفيف. في الوقت نفسه ، يمكن للمصفوفة أيضًا إضافة خصائص مثل كائن. انظر المثال التالي:
نسخة الكود كما يلي:
var arr = {
"0": "بنيامين" ،
"1": "Zuojj" ،
"الطول": 2
} ؛
// المخرجات: "بنيامين"
console.log (arr [0]) ؛
// المخرجات: 2
console.log (arr.length) ؛
var arr = ["Benjamin" ، "Zuojj"] ؛
arr.url = "www.vevb.com" ؛
// المخرجات: "www.vevb.com"
console.log (arr.url) ؛
// المخرجات: 2
console.log (arr.length) ؛
دعونا نلقي نظرة على أساليب الصفيف. هناك العديد من الأساليب التشغيلية للمصفوفات ، مثل indexof/slice/slits/sort ، وما إلى ذلك. نحن نعلم أن هذه الطرق موجودة بالفعل في Array.prototype. انظر المثال التالي:
نسخة الكود كما يلي:
var arr = ["Benjamin" ، "Zuojj"] ؛
// المخرجات: 1
console.log (arr.indexof ("zuojj")) ؛
arr.indexof = function (str) {
إرجاع "إنه مخصص indexof!" ؛
}
// المخرجات: "فهرس مخصص!"
console.log (arr.indexof ("zuojj")) ؛
في الواقع ، يمكننا زيادة تحميل جميع أساليب الصفيف باستخدام الكائنات. انظر المثال التالي لطريقة الدفع:
نسخة الكود كما يلي:
var arr = {
الطول: 0 ،
دفع: وظيفة (val) {
//تكليف
هذا [this.length] = val ؛
// تحديث طول الصفيف
this.length += 1 ؛
// إرجاع طول الصفيف
إرجاع هذا. الطول ؛
}
}
arr.push ("Zuojj") ؛
arr.push ("benjamin") ؛
// Object {0: "zuojj" ، 1: "Benjamin" ، الطول: 2 ، الدفع: وظيفة}
console.log (arr) ؛
ولكن هناك تعريف حرفي لصفيف لا يمكن تنفيذه مرة أخرى:
نسخة الكود كما يلي: var arr = ["Benjamin" ، "Zuojj"] ؛
لكن يمكننا استخدام المنشئ بدلاً من ذلك:
نسخة الكود كما يلي: var arr = new array ("Benjamin" ، "Zuojj") ؛
إذا كان صفيف التعريف الحرفي غير قابل للتطبيق ، فيمكننا إعادة تعريف تعريف الصفيف ، بطريقتنا الخاصة.
نسخة الكود كما يلي: var myarr = new CustomArray ("Benjamin" ، "Zuojj") ؛
الآن أنت تعرف كيف تعمل المصفوفات في JavaScript ، وآمل أن يكون ذلك مفيدًا للجميع.