Saya ingin mendapatkan data spesifik dari nama saya objek jumlahproduksi data tetapi saya mendapat masalah tidak bekerja dengan saya mencoba kode ini. Saya menggunakan fungsi grep karena membutuhkan kondisi di mana kota (lokasi)

var e = 0;    
while (e < kota.length) {
    var filtered = $.grep(data, function (el) {
        return el.lokasi == kota[e];
    });
    
    console.log(filtered);
 e = e+1;
}

Saya memiliki data seperti ini: data saya Saya ingin model data seperti ini: Tampilkan jumlahproduksi data model yang saya inginkan

Jadi Hargai bantuan Anda. Terima kasih

1
Nipurbalistore 21 September 2019, 09:15

1 menjawab

Jawaban Terbaik

Pro-itp: Jangan gunakan grep jQuery untuk mencari melalui JSON karena Anda tidak dapat mengekstrak data dari JSON secara bermakna dalam semua keadaan menggunakan Ekspresi Reguler karena JSON bukan Bahasa Reguler.

Selanjutnya, cukup gunakan JSON seperti yang dimaksudkan untuk dikonsumsi: sebagai objek JS asli. Anda dapat menggunakan Array.map untuk menerapkan proyeksi ke larik masukan, seperti:

var jsonInput = `[
    { "tahun": "2015", "lokasi": "Kab. Benhulu Seltan", "jumlahproduksi": "0" },
    { "tahun": "2016", "lokasi": "Kab. Benhulu Seltan", "jumlahproduksi": "0" },
    { "tahun": "2017", "lokasi": "Kab. Benhulu Seltan", "jumlahproduksi": "9795" }
]`;
var root = JSON.parse( jsonInput );
var values = root.map( e => e.jumlahproduksi );

console.log( values ); // [ "0", "0", "9795" ]

Berikut demo JSFiddle: https://jsfiddle.net/60ncb3g1/

0
Dai 21 September 2019, 06:53