如何获取json的行名而不是行数并使用javascript推送它 我使用的是GET,但它只给我行数字,而不是名称我认为行名优于数字
在循环之前初始化如何获取json的行名而不是行数并使用javascript推送它 我使用的是GET,但它只给我行数字,而不是名称我认为行名优于数字,javascript,jquery,arrays,json,ajax,Javascript,Jquery,Arrays,Json,Ajax,在循环之前初始化idO数组,而不是每次。然后使用一个迭代10次的for循环 (结果中的i)不需要,因为您对处理对象的每个元素不感兴趣,您只需要元素0中的ID $.ajax({ 键入:“获取”, url:“图表?q=news&order=id”, 数据类型:“json”, 成功:功能(响应){ var idO=[]; 对于(变量i=0;i
idO
数组,而不是每次。然后使用一个迭代10次的for
循环
(结果中的i)不需要
,因为您对处理对象的每个元素不感兴趣,您只需要元素0
中的ID
$.ajax({
键入:“获取”,
url:“图表?q=news&order=id”,
数据类型:“json”,
成功:功能(响应){
var idO=[];
对于(变量i=0;i<10;i++){
var id=响应[i][“id”];
推送(id);
}
控制台日志(idO);
}
});
根据您显示的结果,应该记录
[“3”、“3”、“3”、“3”、“3”、“3”、“3”、“3”、“3”、“3”、“3”、“3”]
您是说只需要一个对象值数组吗Object.values(response)
应该给你[“3”,“Bla”,“行标题”]
至于为什么你的代码片段只给你一个值,你要在每次迭代中创建idO
作为一个新数组。这应该在循环外执行一次,以避免that@Taplar我想按10号线,并使其保持可变,你说的“10号线”是什么意思?只有一个物体。它应该是一系列的物体吗?你的问题很难理解,因为10次都不清楚你的意思。你想在你得到的响应上循环10次硬编码吗?Thaaaaanks@W1ZP3R我不明白你的编辑<代码>响应不是数组,而是对象。任何地方都没有id
属性。您还将response[0]
更改为response[i][“id”]
。这是与问题中的回答数据不匹配的部分。
$.ajax({
type: "GET",
url: "Charts?q=news&order=id",
dataType: 'json',
success: function (response) {
for (var i in response) {
var row = response[i];
var id = response[0];
var idO= [];
idO.push(id);
}
console.log(idO);
}
});
Result:["1"];