2017-10-11 43 views
-1

如何修復錯誤遺漏的類型錯誤:無法讀取的不確定上app.js財產「推」:57遺漏的類型錯誤:無法讀取app.js的未定義的屬性「推」:57

我有文件JS app.js與行代碼在這裏:

url = 'https://siayi.github.io/website-desa/sites.json'; 
$.getJSON(url, function (json) { 
    count = new WebsiteCounter(json); 
    $("#total").html(count.count); 
    $("#kecamatan").html(count.kecamatan); 
    $("#kabkot").html(count.kabkot); 
    console.log(count); 
    $(".render-bar").toggle(); 
    tables = new WebsiteTable(json); 
    $.each(tables, function(key,table) { 
     $("#tables").append(table); 
    }); 
}); 


function WebsiteTable(data) { 
    var tables = []; 
    var headers = ["Desa", "Kecamatan", "Kabupaten/Kota"]; 
    var formatted = { 
    "Aceh": [], 
    "Sumatera Utara": [], 
    "Sumatera Barat": [], 
    "Riau": [], 
    "Papua Barat": [] 
    }; 

    $.each(data, function(key,site) { 
    formatted[site.provinsi].push([site.title, site.kecamatan, site.kabkot, site.url]) 
    }); 
+0

在'$ .each' FUNC,** **格式爲空。檢查每個循環中是否存在關鍵site.provinsi。如果可以的話,向我們展示控制檯日誌。 –

+0

這裏是我的控制檯日誌: '未捕獲的TypeError:無法讀取Object上未定義的 的屬性'push'。 (jquery.js:368) at new WebsiteTable(app.js:56) at Object.success(app.js:9) at fire(jquery.js)() :3305) at Object.fireWith [as resolveWith](jquery.js:3435) at done(jquery.js:9242) at XMLHttpRequest。 (jquery.js:9484)' –

回答

0

您正在試圖推動因素爲對象,這是不可能的,試試你聲明數組你把它推前和使用循環(的)來代替。

var url = 'https://siayi.github.io/website-desa/sites.json'; 
 
$.getJSON(url, function (json) { 
 
    var tables = new WebsiteTable(json); 
 
}); 
 

 

 
function WebsiteTable(data) { 
 
    var tables = []; 
 
    var headers = ["Desa", "Kecamatan", "Kabupaten/Kota"]; 
 
    var formatted = { 
 
    "Aceh": [], 
 
    "Sumatera Utara": [], 
 
    "Sumatera Barat": [], 
 
    "Riau": [], 
 
    "Papua Barat": [], 
 
    site: [] 
 
    }; 
 
    
 
    for(var site of data){ 
 
    var obj = { 
 
     kabkot: site.kabkot, 
 
     kecamatan: site.kecamatan, 
 
     provinsi: site.provinsi, 
 
     title: site.title, 
 
     url: site.url 
 
    } 
 
    
 
    formatted.site.push(obj) 
 
    
 
    } 
 
    
 
    console.log(formatted.site) 
 
    
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

相關問題