JavaScript生成一个数组;
数组里有十个随机数,并且不重复;
数字的范围是一到十。
根据以上要求代码如下:
function getRandomArray(){
var array = []
while (array.length < 10)
{
var random = Math.floor(Math.random() * 10) + 1
if (array.indexOf(random) < 0)
{
array.push(random)
}
}
return array
}
你把a和b想成两个集合。你的目的是想得到 a并b - a交b,
所以你可以先得到a-b,在得到b-a,最后再并一下。
写成代码就是这样:
var arrA = [1,2,3,4,5]var arrB = [3,4,5,6,7]
var arrA_B = arrA.filter(function (item) {
return arrB.indexOf(item) == -1
})//过滤arrA中在arrB中出现的元素,得到A-B
var arrB_A = arrB.filter(function (item) {
return arrA.indexOf(item) == -1
})//过滤arrB中在arrA中出现过的元素,得到B-A
var result = arrA_B.concat(arrB_A)//A-B 并 B-A
console.log(result)