javascript - JSON 到 JQuery : What am I doing wrong?

标签 javascript jquery getjson

我是 javascript 和 jquery 开发的新手。我有一个值表,我正在用 PHP 获取并将其格式化为 JSON 字符串,因为 JSON 看起来是将数据导入 javascript 的好方法。但是我在处理 javascript 变量时遇到了问题。

JSON 数据采用非常简单的格式。它看起来像这样:

[
    {"id":"1","name":"Bob","haircolor":"brown"},
    {"id":"2","name":"Carol","haircolor":"Red"}
]

等等。没有一个条目是复杂的。它只是扁平的数据行。

我正在使用 JQuery 中的 $.getJSON() 将数据放入变量中,如下所示:

var people;
$.getJSON("php/getpeople.php", function(data){ //getpeople.php generates the JSON
    people.push(data);
});

根据 console.log(data),对象“数据”正在填充我的 JSON 字符串的内容。但是推送在 javascript 控制台中产生了这些错误:

Uncaught TypeError: Cannot read property 'length' of undefined
Uncaught TypeError: Cannot call method 'push' of undefined

我错过了什么?您是否需要任何其他信息来帮助我解决这个问题?由于这个问题,我已经停止了这个项目,而且我只是一个 javascript 新手,无法弄清楚。

最佳答案

变量people必须是一个数组。将第一行改为

var people = [];

目前“people”还未定义,.push() 方法仅适用于数组。

关于javascript - JSON 到 JQuery : What am I doing wrong?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14538104/

相关文章:

Jquery Div 点击隐藏

javascript - $.getJSON 结果转为 html

javascript - 我的 API 路线不起作用; NodeJS

javascript - 通过PHP函数获取<select>属性

javascript - 单击重置单选按钮尝试在 Django 中提交表单

jquery - 简单的 JQuery getJSON 在 IE9 中不起作用

php - 通过对远程服务器的 getJSON 调用,Google 可视化表不显示

javascript - 在 Angular 7 中动态更改 agm-map 谷歌地图 API key

javascript - 以 Angular 2 动态更改标题字符串

javascript - jQuery:同时设置元素位置和不透明度的动画