【两个数组比较值是否一致】简单方法实现vue对比两个数组的值是否一致
今天写到了一个试题的考试功能,我需要通过把用户填的答案数组和正确答案数组比较,看看用户选中的答案是否和正确答案完全一致,比如正确答案是1,2那用户选中的答案可以是2,1这样顺序乱的但是不能是2,3也不能是2,1,3。这都是错误的,只有选中的项和正确答案一致不多不少,并没每一位都是对的上的才能通过。那就需要两个数组比较,这里通过every方法来简单写一个数组比较功能//模拟两个数组,顺序是乱的let
·
今天写到了一个试题的考试功能,我需要通过把用户填的答案数组和正确答案数组比较,看看用户选中的答案是否和正确答案完全一致,比如正确答案是1,2那用户选中的答案可以是2,1这样顺序乱的
但是不能是2,3也不能是2,1,3。这都是错误的,只有选中的项和正确答案一致不多不少,并没每一位都是对的上的才能通过。那就需要两个数组比较,这里通过every方法来简单写一个数组比较功能
//模拟两个数组,顺序是乱的
let a = [1, 2, 3];
let b = [2, 1, 3];
//先判断两个数组长度要一致,如果不一致那不需要判断直接就不对了。
if (a.length == b.length) {
//every() 每一个都是true则返回true,如果有一个是false,那么直接返回false;
let p = a.every((item, index) => {
//判断的条件为a数组的每一项在b数组内查找不等于-1就代表有,有就为true,所有都是true就返回true
return b.indexOf(item) !== -1;
});
console.log(p);
} else {
//这里写长度不一致也就是错误的时候的操作。比如提示答案错误
console.log("长度不一致,错误");
}
更多推荐
已为社区贡献17条内容
所有评论(0)