2016-04-07 28 views
0

yılında json nesnesi veri alma:Ben bir PHP API bu nesne var javascript

var arrData = typeof JSONData != 'object' ? JSON.parse(JSONData) : JSONData; 
for (var index in arrData[0]) { 
row += index + ',';} 
row = row.slice(0, -1); 
CSV += row + '\r\n'; 
:

## Particular Loan Class 1 Loan Class 2 Loan Class 3 ## 

Bunu yapmaya çalıştım:

[Object { span=1, caption="Particular", master=true}, 
Object { span=5, caption="Loan Class 1"}, 
Object { span=5, caption="Loan Class 2"}, 
Object { span=5, caption="Loan Class 3"}] 

İstenen çıkış olacaktır

csv neye benziyor?

## span caption master ## 

Lütfen altyazı değerini nasıl alacağınızı ve bazı sütunları birleştirme gereksinimi bulunduğundan, bunu Excel'de çıkaracak bir komut dosyası varsa yardımcı olun.

+1

Bize print_r çıktısını değil JSON'u gösterin. –

cevap

1

Yalnızca arrData[0] numaralı nesnede değil, dizinin tamamı üzerinde yineleniyor olmalısınız. Ve değerlere değil, yalnızca index değerini ayarlayan for (index in object) kullanmamalısınız. Daha sonra altyazılara erişmek için .caption kullanın.

for (var i = 0; i < arrData.length; i++) { 
    row += arrData[i].caption + ','; 
} 
+0

Sadece bu json ve javascript şey için oldukça yeni olduğumu onun yıpranmış. php yapıyordu ancak ön uç kodlama yapmaya gerek duyulmayan çerçevelerle. Sadece ihtiyacım olan şeyleri @barmar. – bluerain25

0

başlık bölümü için bu kullanabilir:

var row = arrData.map(function(element) { 
    return element.caption; 
}).join(' '); 

.map dizideki tüm elemanların başlık değer elde etmek için kullanılır. Elde edilen dizi değerleri .join ile birleştirilmiştir. Ayırıcıyı .join işlevi için parametre olarak belirtebilirsiniz.

Excel dosya biçiminde bir şey yazmak önemsiz değildir. Sonucu CSV biçiminde istemediğiniz sürece (kod örneğinizin ima ettiği). Bunun için bu answer bir göz atmak isteyebilirsiniz.

+0

evet müşterilerle görüştükten sonra csv ile gayet iyiyiz ama eğer excel içinde yapabileceğimiz örneklerden formatları takip edebileceğimiz çok daha iyi. Gördüğünüz gibi nesnede "span" var. açıklık, bu altyazının sütun sayısıdır – bluerain25