ما هي المصفوفة:
يمكن التعبير عن المصفوفة على أنها متغير يمكن له ان يأخذ عدة قيم ، و الفائدة من المصفوفات هي تسهيل الوصول لهذه القيم و التعديل عليها
نعرف المصفوفة كمتغير يبقى التعامل معها من حيث عرضها مثل المتغيرات
<!DOCTYPE html> <html> <head> </head> <body> <div id="a1"> </div> <script> var arr=["a","b","c","d"]; document.getElementById("a1").innerHTML=arr; </script> </body> </html>
لمعرفة طول المصفوفة نستخدم الخاصية .legth
arr.length;
ويمكن طباعته في أحد العناصر .innerHTML
<!DOCTYPE html> <html> <head> </head> <body> <div id="a1"> </div> <div id="a2"> </div> <script> var arr=["a","b","c","d"]; var leng=arr.length; document.getElementById("a1").innerHTML=arr; document.getElementById("a2").innerHTML=leng; </script> </body> </html>
لنتعرف على بعض التوابع الهامة للمصفوفات:
- تابع الترتيب :
arr.sort();
- تابع الربط :
arr.join(&quot; &quot;);
- تابع السحب :
arr.pop();
- تابع الدفع :
arr.push();
المثال التالي يوضح تابعي السحب و الدفع :
<!DOCTYPE html> <html> <head> </head> <body> <button onclick="return popfun();">click to pop</button> <button onclick="return pushfun();">click to push</button> <div id="a1"> </div> <script> var arr=["a","b","c","d"]; document.getElementById("a1").innerHTML=arr; function popfun(){ arr.pop(); document.getElementById("a1").innerHTML=arr; } function pushfun(){ arr.push("j"); document.getElementById("a1").innerHTML=arr; } </script> </body> </html>
تابع الصنيف للأرقام و السلاسل :
<!DOCTYPE html> <html> <head> </head> <body> <button onclick="return sortarr();">click to sort</button> <div id="str"> </div> <button onclick="return sortnum();">click to sort</button> <div id="num"> </div> <script> var arr=["F","X","C","H","A"]; document.getElementById("str").innerHTML=arr; function sortarr(){ arr.sort(); document.getElementById("str").innerHTML=arr; } var arrn=[12,45,1,4,5]; document.getElementById("num").innerHTML=arrn; function sortnum(){ arrn.sort(function(a, b){return a-b}); document.getElementById("num").innerHTML=arrn; } </script> </body> </html>
نلاحظ الاختلاف في طريقة ترتيب الارقام وذلك لان التابع sort() يعاملها على انها سلاسل وليس ارقام لذلك نضيق الجزء البرمجي التالي
arrn.sort(function(a, b){return a-b});
المثال الاخير :ترتيب عناصر المصفوفة بقائمة مرتبة او غير مرتبة
باستخدام تابع joın()
<!DOCTYPE html> <html> <head> </head> <body> <div id="a1"> </div> <script> var arr=["a","b","c","d"]; var y=document.getElementById("a1").innerHTML=arr; y="<ol><li>"; y+=arr.join("</li><li>"); y+="</li></ol>"; document.getElementById("a1").innerHTML=y; </script> </body> </html>