gpt4 book ai didi

javascript - 添加多个有限制的数组

转载 作者:行者123 更新时间:2023-12-03 08:39:44 25 4
gpt4 key购买 nike

我有三个数据源,它们返回数量不等的数组。我想从中创建一组结果,同时限制我可以获得的数量。

var array1 = ["one"];
var array2 = ["two", "three", "four"];
var array3 = ["five", "six", "seven"];

我只想返回前 6 个结果,但它们可以按顺序来自三个数组中的任何一个。从上面的示例中,我希望看到返回“一、二、三、四、五、六”。

我使用多个 for 循环和多个 if 语句实现了这一点:

var tList = [];
var tCount = 0;
var tLimit = 5;

for (i = 0; i < array1.length; i++) {
if (tCount <= tLimit) {
tList.push(array1[i]);
tCount++;
}
}

for(i = 0; i < array2.length; i++) {
if (tCount <= tLimit) {
tList.push(array2[i]);
tCount++;
}
}

for(i = 0; i < array3.length; i++) {
if (tCount <= tLimit) {
tList.push(array3[i]);
tCount++;
}
}

但是,这似乎不是最好或最简洁的方法,是否有更好的方法来实现相同的目标?不使用像下划线这样的插件。

这是一个可以玩的jsfiddle:https://jsfiddle.net/sju7g5dp/

最佳答案

concat() 方法用于连接两个或多个数组

此方法不会更改现有的数组,而是返回一个新的数组,其中包含连接的数组的值。

var array1 = ["one"];
var array2 = ["two", "three", "four"];
var array3 = ["five", "six", "seven"];
var result=array1.concat(array2,array3);
console.log(result);

然后简单地切片,

结果.slice(0,5)

关于javascript - 添加多个有限制的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33085885/

25 4 0
文章推荐: javascript - 在 LiveCycle Designer 中计算日期之间的天数
文章推荐: javascript - Node.js jsdom/express 响应缓存?
文章推荐: javascript - 如何在 angularJS 中访问