【两个数组比较值是否一致】简单方法实现vue对比两个数组的值是否一致

今天写到了一个试题的考试功能,我需要通过把用户填的答案数组和正确答案数组比较,看看用户选中的答案是否和正确答案完全一致,比如正确答案是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("长度不一致,错误");
      }
  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

接口写好了吗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值