Javascript 我如何重构这个?
现在,当我准备通过Ajax请求将数据发送到我的web应用程序时,我只需要连接我的JS数组(在它们之间放置Javascript 我如何重构这个?,javascript,refactoring,Javascript,Refactoring,现在,当我准备通过Ajax请求将数据发送到我的web应用程序时,我只需要连接我的JS数组(在它们之间放置-1作为分隔符-值只能是正值,因此-1表示新数组的开始)。这对我来说似乎有点难看,所以我想知道重构这个的最佳实践是什么 var online1 = []; var online2 = []; var online3 = []; var online4 = []; for(i = 0 ; i < listOfPlayers.length ; i++
-1
作为分隔符-值只能是正值,因此-1
表示新数组的开始)。这对我来说似乎有点难看,所以我想知道重构这个的最佳实践是什么
var online1 = [];
var online2 = [];
var online3 = [];
var online4 = [];
for(i = 0 ; i < listOfPlayers.length ; i++) {
var player = listOfPlayers[i].href;
var uid = player.substring(player.lastIndexOf('=') + 1);
if(onlineStatus[i].className == "online1"){
online1.push(uid);
}
if(onlineStatus[i].className == "online2"){
online2.push(uid);
}
if(onlineStatus[i].className == "online3"){
online3.push(uid);
}
if(onlineStatus[i].className == "online4"){
online4.push(uid);
}
}
online1.push(-1);
online2.push(-1);
online3.push(-1);
online4.push(-1);
var result = online1.concat(online2, online3, online4);
//...
ajaxRequest.send("result="+result);
var online1=[];
var online2=[];
var online3=[];
var online4=[];
对于(i=0;i
您可以做两件事:
JSON.stringify
将其字符串化。您可以使用JSON.parse来解析它,即使存在服务器端解决方案JSON
在最近的浏览器和as中可用设置为通用
var online={1:[],
2: [],
3: [],
4: []};
对于(i=0;i
答案称为JSON
()。顺便说一句。我不能更改HTML页面本身,我只能使用JavaScript,通过greasemonkeythanks将其添加到页面中。顺便说一句,这有助于在我的servlet(java)中解析JSON-
var online = {1: [],
2: [],
3: [],
4: []};
for(i = 0 ; i < listOfPlayers.length ; i++) {
var player = listOfPlayers[i].href;
var uid = player.substring(player.lastIndexOf('=') + 1);
var number = onlineStatus[i].className.substring(6);
online[number].push(uid);
}
var result = JSON.stringify(online);
//...
ajaxRequest.send("result="+result);