如何在 jQuery 回圈中選擇隨機專案。我有一個包含 30 個專案的回圈,我在其中添加了一些亂數,現在我不想一次向所有專案添加亂數,我想向回圈中的隨機專案添加亂數。
一個很好的例子是,假設我希望我的回圈將 5 添加到回圈的幾個隨機專案中,如下所示
for( var i = 0; i < 30; i ){
if( i 'is in range of radom' ){
i 5;
} else {
i 0;
}
}
這就像在回圈中選擇一堆專案,下次選擇另一批專案,依此類推。我可以在回圈中選擇 10 個隨機專案以添加 5 個,下一個回圈選擇另一個隨機 10 個專案,依此類推。
uj5u.com熱心網友回復:
假設您的意思是您的 30 個專案是一個包含 30 個數字的陣列。
假設您想將一個值(在您的示例中為 5)添加到 n 個隨機專案(在您的示例中為 10 個專案)
const items = [/* 30 things here */];
for (let i = 0; i < 10; i ) {
items[Math.random() * items.length] = 5;
}
如果 Math.random() 回傳相似的值,這可能會將 5 添加到同一專案 10 次。
uj5u.com熱心網友回復:
考慮以下。
function getRandomInt(max) {
return Math.floor(Math.random() * max);
}
var random = [];
for (var i = 0; i < 5; i ) {
random.push(getRandomInt(30));
}
var results = [];
for (var i = 0; i < 30; i ) {
if (random.indexOf(i) >= 0) {
results[i] = i 5;
} else {
results[i] = i;
}
}
console.log(random, results);
假設random是一個“隨機”條目陣列,您可以按順序填充一個包含 30 個條目的新陣列,并帶有加鹽結果。
結果:
[
0,
1,
2,
3,
4,
5,
11,
7,
8,
14,
10,
11,
12,
13,
19,
15,
16,
17,
18,
19,
20,
21,
22,
28,
24,
25,
26,
32,
28,
29
]
您可以使用.indexOf():
所述的indexOf()方法回傳在該給定元素可以在陣列中可以發現,或-1,如果它不存在的第一個索引。
例如,如果您有一個數字陣列,則可以通過這種方式檢查數字是否在該陣列中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/360490.html
標籤:javascript 查询
上一篇:影片字母移除和容器大小
下一篇:狀態變化的直接更新(React)
