Javascript 数组中的ajaxjson响应转换
在这里,我面临着一个问题,比如从rails控制器获取json对象响应时: “77.576343,12.964343,77.576413,12.963679,77.575233,12.96545,77.5760913,12.9657723,77.575217,12.965333” 但是我需要使用这个数据作为数组,以便在ajax中实现一个成功的函数 [“77.570934”、“12.964462”]、[“77.57199”、“12.96455”]、[“77.571046”、“12.964471”]、[“77.572142”、“12.964577”] 如何在ajax成功函数中转换它。请帮帮我。Javascript 数组中的ajaxjson响应转换,javascript,jquery,ruby-on-rails,json,ajax,Javascript,Jquery,Ruby On Rails,Json,Ajax,在这里,我面临着一个问题,比如从rails控制器获取json对象响应时: “77.576343,12.964343,77.576413,12.963679,77.575233,12.96545,77.5760913,12.9657723,77.575217,12.965333” 但是我需要使用这个数据作为数组,以便在ajax中实现一个成功的函数 [“77.570934”、“12.964462”]、[“77.57199”、“12.96455”]、[“77.571046”、“12.964471”]、
Thanx。您可以拆分字符串并使用创建一个新数组
var string=“77.576343,12.964343,77.576413,12.963679,77.575233,12.96545,77.5760913,12.9657723,77.575217,12.965333”,
array=string.split(',).reduce(函数(r,a,i){
如果(!(i%2))r.push([]);
r[r.length-1]。推送(a);
返回r;
}, []);
console.log(数组)代码>我的朋友“77.576343,12.964343,77.576413,12.963679,77.575233,12.96545,77.5760913,12.9657723,77.575217,12.965333”是字符串。
尝试使用javascript函数拆分
var x = "77.576343,12.964343,77.576413,12.963679,77.575233,12.96545,77.5760913,12.9657723,77.575217,12.965333";
var array = x.split(',');
数组应为具有10个位置的数组。
制作一个简单的循环,如:
var newArray = [];
var tmpArray = [];
for(var i = 0; i < array.length; i++){
tmpArray.push(array[i]);
if((i+1) % 2 === 0){
newArray.push(tmpArray);
tmpArray = [];
}
}
var newArray=[];
var tmpArray=[];
对于(var i=0;i
我已经准备好添加这个确切的答案(以及不同的变量名)。我建议将内联的| |转换回正式的if()。这是一个更高级的概念(imho),对于刚开始使用.Thanx进行回复的人来说,这可能不是不言而喻的,但我通过使用JSON.stringify()方法解决了我的问题。再次感谢您宝贵的回答。不清楚您是否正在使用其他人的服务,或者您是否正在尝试将数据从自己的后端传递到前端。如果您拥有双方,那么您应该修复Rails服务器输出的JSON格式。Thanx,以获得有价值的答案@Julian Porras