我从AJAX调用成功函数
重新获得了以下响应{"0":"A",
"1":"B",
"2":"C",
"saved_as":["M","K","L"]}
有没有办法将它放在像
这样的数组中dataObj[0]="A";
dataObj[1]="B";
dataObj[2]="C";
在未返回数据的一方可以拥有更多前三个元素。最后一个元素将始终为saved_as
感谢。
答案 0 :(得分:3)
如果您只想要数字属性(这是有意义的),您可以这样做:
var array = [];
for( var name in dataObj ) {
if( !isNaN( +name ) ) {
array[ name ] = dataObj[ name ];
}
}
DEMO: http://jsfiddle.net/hW8Jm/
(我假设已经解析了JSON数据。)
此枚举dataObj
的属性,尝试使用一元toNumber
运算符进行+
转换,然后检查结果是否为NaN
(不是数字)。
如果它不是NaN
(它是一个数字),则使用该属性作为数组的索引将该属性的值添加到数组中。