簡體   English   中英

將json元素存儲到javascript數組中

[英]storing json element into javascript array

我使用ajax用php檢索數據庫數據並將其轉換為json

<?php
echo json_encode($data);
?>

Ajax功能

ajaxCall("getdata.php", container, function (data) {
    var count = data.length
    var i;
    var array[];
    for (i = 0; i < count; i++) {
        container.innerHTML += data[i].property; //this is doing well
        array[i] = data[i].property; //this when goes wrong;
    }
});

當我嘗試重新array[i]返回undefined時,我該怎么辦?

JavaScript中的數組初始化應類似於var array = [];

ajaxCall("getdata.php", container, function (data) {
    var count = data.length
    var i;
    var array = [];
    for (i = 0; i < count; i++) {
        container.innerHTML += data[i].property; //this is doing well
        array[i] = data[i].property; //this when goes wrong;
    }
});

或者您可以使用for...in循環進行迭代,並通過push()向數組添加值

ajaxCall("getdata.php", container, function (data) {
    var array = [];
    for (var v in data) {
        container.innerHTML += v.property; //this is doing well
        array.push(v.property); //this when goes wrong;
    }
});

使用JSON.parse。

演示:

var json = '[{"result":"OK","count":1}, {"result":"NOK","count":2}]',
obj = JSON.parse(json);

alert(obj[0].result);
alert(obj[1].result);

alert(obj[0].count);
alert(obj[1].count);

因此,在您的情況下,它可能看起來像這樣:

ajaxCall("getdata.php", container, function (data) {
    array = JSON.parse(data);    
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM