قرات عنها في المنتديات العربية لكني لم افهم شيئاً
ما هي وماذا تفعل ؟
.................................ز
احتاجها في امر ما بالجافاسكربت .. هل اتعلمها ؟ ام فقط اقلد وانساها ؟
JSON طريقة لتمثيل البيانات والمصفوفات. عندما تتخاطب المنصات او البرمجيات او الانظمة مع بعضها البعض فهي تتبادل البيانات بهذا الشكل. تخيل لو كنت تود ارسال قائمة ببيانات الموظفين المحالين للتقاعد إلى جهة أخرى فحينها سترسلها مرتبة ومصاغة بهذا الشكل.
حسنا لماذا جيسون ؟
تخيل ان يرسل لك شخص رسالة باللغة اليونانية هل ستفهمها ؟ كذلك الانظمة بحاجة الى معيار موحد لكي تفهم بعضها البعض. وبالمناسبة ليست JSON فقط فهنالك ايضا XML.
أنت مبرمج ولا أتصور ان هنالك مبرمج لا يعرف التعامل مع معيار JSON و XML بل لا يمكنني وصفه انه مبرمج اذا لم يكن يعرف كيف ومتى ولماذا يستخدمهما. هذه المعايير مهمة اذا كنت تطمح لبرمجة أنظمة متوسطة وكبيرة وبل صغيرة ايضا.
تخيل معي في طلب Ajax واحد كيف تقوم بارسال البيانات الى الوجهة وكيف تستقبل البيانات من الوجهة للمصدر بالطبع ستستخدم شكل جيسون لتمثيل بياناتك قبل ارسالها وكذلك الوجهة ستقوم بتثميل البيانات على نفس الهيئة قبل اعادة ارسالها لك. انا لا اتكلم عن ارسال رقم او اسم , انا اتكلم عن ارسال بيانات مرتبة ومصنفة. هذا ابسط مثال يعيشه المبرمج ويستدعي منه استخدام هذه المعايير.
لا ينبغي على المبرمج ان يختار او ينتقي ما يتعلم.
أنصحك بمشاهدة هذا المقطع حالًا
أو اقرأ هذه الصفحة http://www.secretgeek.net/j...
ثم ستعرف إن كنت تحتاج تعلمها أو لا
تحذير يجب أن تشاهد المقطع السابق حال فتحه.
بالتوفيق
اخي بكل بساطه json طريقه تنسيق البيانات فمثلا لديك سيرفر A وتريد ان ترسل رساله الى العميل B اكيد يجب ان ترسل اسم المرسل وتاريخ الارسال ورقم المرسل الخ .. هذه البيانات السؤال هو كيف سترسلها الى الطرف الاخر هل سترسلها كنص ام بشكل منسق مثلا
اسم المرسل : فلان ابن فلان
الرساله : "اااا سسسس ببب صصص قققق ففف "
رقم المرسل : "+123 456 789"
او كنص "اسم المرسل فلان بن فلان , الرساله ااا سسس ببب صصص قققق ففف , رقم المرسل +123 456 789 "
الخ
json عبارة عن هيكل لتنسيق البيانات يمكنك ان تستخدمه او "يمكنك ان تبرمج هيكل خاص بك لتنسيق بياناتك"
لماذا json مشهورة لان اكثر الشركات تنسق بها ويوجد لها دعم ومكتبات في كل لغة برمجيه وتم اختبارها يعني احتمال وجود اخطاء قليل جداً .. لذالك اذا اردت برمجه هيكل من الصفر يجب ان تختبر الهيكل وامكانياته مده طويله لكي تضمن ارسال كافه انواع البيانات والترميزات الى الطرف الاخر
الأمر بسيط جدا .. JSON .. هو معيار لتبادل البيانات .. يتم صياغته بطريقة كتابة الـكائن في لغة جافاسكربت .. JavaScript Object Notation.
لو افترضنا أنك تريد إرسال مجموعة بيانات لبعض الكتب .. فستكون طريقة كتابتها على الشكل التالي
{"Books":[
{"Title":"First Book Title","Author":"Author 1"},
{"Title":"Second Book Title","Author":"Author 2"},
{"Title":"Third Book Title","Author":"Author 3"}
]}
دعنا نشاهد JSON يحتوي على بيانات كتاب واحد فقط .. و أكثر تنسيقا مما سبق إليك المثال الأكثر بساطة
{"Books":[
{
"Title":"First Book",
"Author":"Author 1"
}
]}
في المثال الثاني قمت فقط بتقسيم بيانات الكتاب الواحد لأكثر من سطر .. و يمكنك أن تضيف إليه بيانات اكثر من كتاب ..
يمكنك تحويل الـ Array و الـ Object إلى JSON باستخدام json_encode()
و يمكنك التحويل من JSON عن طريق json_decode()
إن كنت تريد فهم الـ JSON بشكل أسرع .. قم بعمل Array باللغة التي تستخدمها .. و من ثم قم بالبحث عن الدالة المناسبة لتحويله إلى JSON و شاهد النتيجة و قارن بينها و بين الـ Array الأصلي .. ستجد الأمر بسيط جدا
ثم بعد ذلك .. يمكنك القراءة حول استخداماته بشكل مفصل ..
لغة JSON ليس لغة فريدة بل هى تابعة لل JavaScript وأعتقد انك تعلم ذلك
JavaScript Object Notation
وهلى ليست لغة أكواد ولا تتعامل بها فقط هي للتخزين ويتعامل بها JavaScript
عن طريق JSON.parse("jsonRequestXHR.responseText")
هي مفيدة في تخزين جميع بيانات الصفحة
مثال عن ملف JSON
{"person":{
"firstName":"Mohamed",
"lastName":"Gamal",
"age":"32",
"spechialDetails":{
"favStar":"Ahmed Elsaka",
"favMovies":[
{"name":"Horob Etrary"},
{"name":"Jowab E3tical"},
{"name":"Shad Ajzaa"},
{"name":"Eljazera"},
{"name":"Eljazera II"}
]
}
}
}
JavaScript Access Guide
Perrson1 = JSON.parse(xhrvar.responseText)
Person1.person.firstName //return Mohamed
Person1.person.spechialDetails.favMovies[3].name //return Eljazera
التعليقات