سؤال

أقوم بسحب البيانات من خدمة ويب ويتم تنسيقها على أنها JSON. أنا أكتب برنامج نصي لتطبيقات Google لأوراق Google التي ستعمل على ملء البيانات من أجلي. مشكلتي هي ، لا يبدو لي أن أخرجها.

عمل:

var dataset = myJSONtext;
Browser.msgbox(dataset.item[0].key); 

الأخطاء ، قائلا:

لم يتم تعريف العنصر [0].

هل هناك بعض الأشياء التي يجب أن أفعلها؟

هل كانت مفيدة؟

المحلول

البرنامج النصي للتطبيقات (إلى حد كبير) فقط JavaScript ؛ السهول القديمة JSON.parse هو أفضل خيار لك لحلية JSON في تمثيل كائن.

تستطيع ايضا استخذام JSON.stringify لتسلسل كائن في تمثيل السلسلة.

نصائح أخرى

JSON.parse

بالنسبة لأولئك الذين يرون هذا في 2011+ ، مثل أشار بقلم هنريك أبريو في منتدى دعم Google ، يتم/إهمال/jsonparse. كما ترون من الخيط ، هناك خطأ مع هذه الوظيفة التي لا تعمل عندما تكون مفاتيحك أرقامًا ، أي "1234".

كما هو مقترح ، يجب أن تستخدم json.stringify/parse.

تحديث 2013 - تحقق من مكتبة الاستيراد في على

http://blog.fastfedora.com/projects/import-json

"يستورد ImportJson بيانات من واجهات برمجة تطبيقات JSON العامة إلى جداول بيانات Google. ويهدف إلى العمل بشكل مشابه لكيفية عمل جدول بيانات Google الأصلي ImportData و ImportXML."

الكود المتاح هنا وقد قدمه إلى معرض النصوص:https://raw.github.com/fastfedora/google-docs/master/scripts/importjson/code.gs

مثال الاستخدام: بعد وضع الرمز في محرر البرنامج النصي لجدول جوجل ، ثم الصق في الخلية A1 من الورقة:

=ImportJSON("http://gdata.youtube.com/feeds/api/standardfeeds/most_popular?v=2&alt=json", "/feed/entry/title,/feed/entry/content",               "noInherit,noTruncate,rawHeaders")

استخدم هذا الجوهر:https://gist.github.com/varun-raj/5350595a730a62ca1954

يحل محل

http://example.com/feeds?type=json

مع عنوان URL الخاص بك JSON

أضف كياناتك هنا

rows.push([data.id, data.name,data.email]);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top