我通过API提取三个随机记录,我想确保没有任何记录是相同的。如何编辑我的代码以便检查记录是否唯一?
这是我目前的代码:
$.ajax({
url: ajaxUrl,
type: "GET",
dataType: "json",
success: function (data) {
var person1 = data.records[1 + Math.floor(Math.random() * 9)];
var person2 = data.records[1 + Math.floor(Math.random() * 9)];
var person3 = data.records[1 + Math.floor(Math.random() * 9)];
$(".one").html(person1.name);
$(".two").html(person2.name);
$(".three").html(person3.name);
},
error: function () {
alert("boo!");
}
});
由于
答案 0 :(得分:3)
如果您的data.records
是一个数组而不是一个对象,请使用splice
和0到.length
之间的随机数来删除和返回数组元素,而不必担心重复。如下:
var data = ["Gary","Fred","Seb","Garrett"];
while (data.length) {
alert(data.splice(Math.floor(Math.random() * data.length), 1)[0]);
}
请注意,这假设原始数组已经是唯一的。
答案 1 :(得分:1)
从响应中删除名称,例如提取乐透的数字......