为什么在这个数组的末尾会有一个未定义的?

时间:2016-04-18 08:39:52

标签: javascript arrays

我正在尝试用随机文本制作一个简单的数组。我总是在数组结束后看到未定义。有没有办法删除它?我搜索并试过[i-1],但没有运气。

function arrayMaker(integer) {
var alphabet = "abcdefghijklmnopqrstuvwxyz";
var array = [];
for (q = 0; q < integer; q++){
    var word = '';
    for (i = 0; i < Math.floor((Math.random() * 10) +1); i++){
        var number = Math.floor(Math.random() * 26);
        word += alphabet.substring(number, (number+1));
    }
array.push(word);
}
console.log(array);
}
var test = arrayMaker(10)
console.log(test)

2 个答案:

答案 0 :(得分:5)

你没有归还。添加

ID  V1
A   100
A   200
B   100
C   300
D   400
E   223
E   233
E   4

然后你得到你想要的数组。

如果仅使用return或不返回,则会返回return array;

&#13;
&#13;
undefined
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您没有从函数返回任何值,这就是它显示未定义的原因。变量“test”没有任何数据。

试试这个:

function arrayMaker(integer) {
 var alphabet = "abcdefghijklmnopqrstuvwxyz";
 var array = [];
 for (q = 0; q < integer; q++){
    var word = '';
    for (i = 0; i < Math.floor((Math.random() * 10) +1); i++){
    var number = Math.floor(Math.random() * 26);
    word += alphabet.substring(number, (number+1));
    }
    array.push(word);
 }

 console.log(array);
 return array;
}
var test = arrayMaker(10)
console.log(test)