في JavaScript / jquery، كيفية استرداد البيانات التي تحتوي على مسافات باسمها؟

StackOverflow https://stackoverflow.com/questions/1863709

سؤال

أنا أسترجع JSON باستخدام مكالمة Getjson's Jequery's.

مشكلتي هي أن بعض الحقول في JSON التي تم إرجاعها تحتوي على مسافات فيها.

كيف يمكنني استرجاع هذه القيم من JSON دون تغيير البيانات المصدر؟ انظر خط علامة "خطأ" أدناه:

$.getJSON(url, null, function(objData) {
  $.each(objData.data, function(i, item) {
    var zip = item.Zip;
    var fname = item.First Name; //ERROR
  });
});

مثال JSON:

jsonp123456789({"data":[{"Zip":"12345","First Name":"Bob"},{"Zip":"23456","First Name":"Joe"},{"Zip":"34567","First Name":"Bill"}]})

شكرا

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

المحلول

مجموعة أدوات الوصول إلى Array يعمل على الكائنات أيضا.

$.getJSON(url, null, function(objData) {
  $.each(objData.data, function(i, item) {
    var zip = item.Zip;
    var fname = item['First Name'];
  });
});

يمكنك استخدام هذا السلاسل التعسفية (تلك التي ليست معرفات قانونية) وكذلك المتغيرات.

var fieldName = "First Name";
var fname = item[fieldName];

نصائح أخرى

$.getJSON(url, null, function(objData) {
  $.each(objData.data, function(i, item) {
    var zip = item.Zip;
    var fname = item["First Name"]; //Changed this
  });
});

مرجع العنصر باستخدام كإجراء بدلا من تدوين النقطة

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top