【发布时间】:2018-11-23 17:26:11
【问题描述】:
我对 Javascript 还是很陌生,如果有任何帮助,我将不胜感激。
所以取一个如下所示的字符串:"John Doe, 5554443333, Jane Doe, 5555555555"
我们将每个人分配给一个对象,然后将该对象分配给一个数组,并打印该数组以显示我们的玩家。预期的输出是:
[{ player: 'John Doe', contact: 5554443333}, { player: 'Jane Doe', contact: 5555555555}]
我当前的输出是:
[{ player: 'Jane Doe', contact: 5555555555}, , { player: 'Jane Doe', contact: 5555555555}]
所以当前的问题是它在播放器对象之间放置了两个逗号,并且它两次列出了第二个播放器。
我的代码如下:
function playerManager(players)
{
var blank = []; // blank array to return per requirements (nil, none, null, or empty string)
var info = players.split(','); // Split our input string, into a string array, split at comma
var data = []; // Create array to hold our players, then return.
// function to create player
var player =
{
player: "name",
contact: "contact"
};
// check if our string is empty, nil, none, or null, if it is , return our blank array
if(players == "" || players == "nil" || players == "None" || players == "null")
{
return blank;
}
for( i = 0; i < info.length - 1; i+=2)
{
player.player = info[i];
player.contact = info[i+1];
data[i] = player;
}
return data;
}
感谢所有帮助。
【问题讨论】:
-
请忽略将我的对象标记为函数的错误注释(它以前是构造函数)以及 if 语句是正确的,因为我们要检查字符串中的某些关键字或空白。谢谢!!!
标签: javascript arrays list object debugging