المصفوفات والكائنات هي أنواع بيانات معقدة، على عكس نظيراتها البدائية، قادرة على الاحتفاظ بقيم متعددة في وقت واحد.
قد تسأل نفسك لماذا يحتاج المرء إلى نوعين معقدين من البيانات لإنجاز هذه المهمة، وتتساءل لماذا لا يكون الحصول على نوع واحد كافيًا لإنجاز المهمة. اعتمادًا على شروطك وأهدافك، قد يكون من الأفضل لك اختيار استخدام "كائن" للاحتفاظ بقيم متعددة عبر "مصفوفة"، ويرجع السبب وراء ذلك إلى سبب واحد: سهولة القراءة. هناك ظروف سيكون من الأفضل فيها اختيار كائن بدلاً من مصفوفة، والعكس صحيح.
تعمل الكائنات بشكل أفضل مع الكائنات، كما خمنت! إنهم قادرون على توفير أسماء للعديد من القيم الخاصة بهم، وعادةً ما يتم استخدامها لوصف الخصائص التي تأتي مع عنصر واحد. تعمل المصفوفات بشكل أفضل مع القوائم، فهي مقيدة في قدرتها على وصف قيمها، وعلى الرغم من أن المصفوفات هي كائنات من الناحية الفنية، إلا أنها اكتسبت اسمها الفريد Array نظرًا لمدى تفردها في بناء الجملة والطريقة التي يتم بها قيمها المتعددة يتم تخزينها أو الوصول إليها. ستفهم قريبًا أنواع البيانات المعقدة هذه مثلي، حيث يمكن تصور الكائنات على أنها ثلاثية الأبعاد، ويمكن اعتبار المصفوفات ثنائية الأبعاد.
-كائنات ثلاثية الأبعاد ومصفوفات ثنائية الأبعاد
//AN OBJECT let person = { voice: "soft", age: "32" }; //AN ARRAY let groceryList = ['bananas', 'coconuts', 'grapes']
-Above we have an example of an object doing what it does best, describing a 3 dimensional object in reality. Here we have the initialization of the variable 'animal' using the 'let' keyword to point to an object; which contains it's information within curly braces '{}'. Within the object are 'key: value' pairs. Keys are to the left of ':', and their values are to the right, with each pair separated by ','. As you can see with an object, we can give each value it holds a unique name to help describe and identify the value it points to. The age of the person is 32, and their voice is soft. You may notice that this format is easily readable and comes natural to understand, even someone who has no clue what coding is will likely be able to glance at those lines of code, and get a general understanding of what is going on.
تحت هذا لدينا مجموعتنا الجميلة من العناصر الأكثر أهمية لقائمة البقالة، ويمكن العثور على نفس سهولة القراءة الطبيعية. لاحظ أنه يتم الإشارة إلى المصفوفة بين قوسين "[]".
الوصول إلى الكائنات والمصفوفة:
console.log(dog.name) //returns "Fifo" console.log(groceryList[0] //returns bananas
As mentioned earlier, objects are 3-dimensional, and arrays are 2-dimensional. The first way this becomes noticeable is when you try to access the values of an array or object. In a 2-dimensional plane, the surroundings are described with coordinates; a series of numbers that equate to the description of a particular location. This is how arrays behave, their coordinates are called indexes, and their particular location is a value. Like coordinates, indexes will always be numbers, and arrays cannot access their values in any other way unless you pass in a number next to it surrounded by brackets '[#]'. Even the brackets themselves move like a 2 dimensional object; up, down, left, right, there are no curves to help one describe the complexities of a 3-dimensional plane, then comes Objects. Objects access their values with their 'key'. Earlier, the "key: value" pair was '"voice: "soft"', thus we can reference the dogs name by typing "person.voice". Just like 3-dimensional objects in our non-virtual reality, the properties of these objects are described with words, given names so-to-speak. The phenomenological conclusion we draw for what these properties are in relation to the object we experience, equates to the value we give to that word.
الفلسفة وفهم الأشياء: قد نصف الملمس بأنه ناعم، والرائحة كريهة، والعاطفة بأنها مؤلمة، ولكن كل المفاهيم تعتمد في النهاية على كلمتين لوصفها. كلمة "ناعمة" وحدها يمكن أن يساء فهمها ويصعب تصورها عند وصف شيء ما في الواقع. إذا كان على المرء أن يقول فقط ""الشخص"" الناعم ""، فقد يكون الاستنتاج الناتج مختلفًا من مفهوم فرد إلى آخر؛ قد يعتقد أحدهم أنك تقول أن "الشخص الناعم" لطيف ومحب، وقد يقول الآخر أن "الشخص الناعم" ضعيف وضعيف. ومع ذلك، إذا قلنا إن "الشخص" لديه "نسيج" "ناعم"، أو "الشخص" لديه "صوت" "ناعم"، فإننا سنصل في النهاية إلى استنتاج أقل تباينًا حول ما هو عليه". هذا هو السبب في أن "الكائن" يحتوي على "مفتاح" يمثل "قيمة"" يمكن أن يكون منطقيًا على أنه ثلاثي الأبعاد.
معالجة الكائنات والمصفوفات
يمكن التعامل مع الكائنات والمصفوفات بطرق مختلفة. يتم الوصول إلى المصفوفات عن طريق رقم فهرس، بينما بالنسبة للكائنات، يتم الوصول إلى قيمها باستخدام شيء يسمى "المفتاح". نظرًا لحقيقة تسمية كل مفتاح، يكون التنقل عبر الكائنات أصعب من التنقل عبر المصفوفات. ولهذا السبب تعمل المصفوفات بشكل أفضل مع القوائم المرقمة، وتعمل الكائنات بشكل أفضل مع وصف خصائص عنصر واحد.
يمكنك الوصول إلى الأشياء الموجودة في الكائن باستخدام مفتاحه، ويجب أن تستخدم المصفوفات فهرسه. نضيف أشياء إلى الكائنات باستخدام الأقواس والنقاط، بالنسبة للمصفوفات، يمكننا استخدام الأقواس جنبًا إلى جنب مع شيء يسمى "الطرق".
الطرق المستخدمة لإزالة المصفوفة وإضافتها هي .pop() و .push() و .shift() و .unshift() و .splice() والمزيد. تعتمد الطريقة المختارة على الموقف.
//adding / removing values to arrays and objects person.name = "Sam"; //adds key 'name' to person with value of "sam" person["sign"] = "pisces" //adds key iykyk to a array.push(tomato) //adds tomato to the end of array array.unshift(cherries) //adds -1 to beginning array.splice(1, 2, 'hello world') //starts at index 1, removes 2 indexes and inserts hello world at index 1. // 5 array.pop() //removes last index array.shift() //removes first index in array delete animal.sign //removes key sign from animal array.slice(1) //removes first element from a COPY of the array
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3