js 案例练习

案例练习

  • 定义一个函数,生成4位的随机数字验证码。
    function getAuthCode2() {
      var num = parseInt(Math.random() * 10000);
      if (num < 1000 && num > 99) {
        num = "0" + num;
      } else if (num < 100 && num > 9) {
        num = "00" + num;
      } else if (num < 10) {
        num = "000" + num;
      }
      return num;
    }
    console.log(getAuthCode2());  //随机生成的4位数字
  • 根据输入的分数划分等级 90分以上为优,80分以上为良,60分以上为及格,60分以下为不及格
    var score = Number(prompt("请输入您的成绩!"));  //输入成绩  例:69
    if (score > 100) {
      alert("你咋不上天呢");
    } else if (score >= 90) {
      alert("优");
    } else if (score >= 80) {
      alert("良");
    } else if (score >= 60) {
      alert("及格");  //及格
    } else if (score >= 0) {
      alert("不及格");
    } else {
      alert("你的输入有误!");
    }
  • 定义一个函数,将数组 [1,5,7,12,20]中的小于10的前面进行补0
    function bl(arr) {
      arr.forEach(function (item, index) {
        if (item < 10) {
          arr[index] = "0" + item;
        }
      });
      return arr;
    }
    var arr = [1, 5, 7, 12, 20];
    console.log(bl(arr));  // ["01", "05", "07", 12, 20]
  • 定义一个函数,实现两个函数的并集 eg:[1,2,3,4]与[2,4,5,6]的并集是[1,2,3,4,5,6]
    var arr1 = [1, 2, 3, 4];
    var arr2 = [2, 4, 5, 6]
    for (var i = 0; i < arr1.length; i++) {
      var index = arr2.indexOf(arr1[i]);
      if (index == -1) {
        arr2.push(arr1[i]);
      }
    }
    console.log(arr2.sort(function (v1, v2) {
      return v1 - v2;
    }));  //[1, 2, 3, 4, 5, 6]
  • 求整数1~100的累加值,但要求跳过所有个位为3的数
    var sum = 0;
    for (var i = 1; i <= 100; i++) {
      if (i % 10 != 3) {
        sum += i;
      }
    }
    console.log(sum);  //4570
  • 得到下面数组 [“blue”,“cyan”,“pink”,“red”,“black”,“green”,“yellow”] 中字符串"red"的索引值
    var arr = ["blue", "cyan", "pink", "red", "black", "green", "yellow"];
    arr.forEach(function (item, index) {
      if (item == "red") {  //red可以改为其他数组中的内容 
        console.log(index);  //3
      }
    })
  • 查询水果价格:输入水果名称,输出水果的价格。水果种类有:苹果,香蕉,荔枝,梨子。价格自己随便写。
    var fruits = prompt("请输入水果的名称!");  //例:香蕉
    switch (fruits) {
      case "苹果":
        alert("3元一斤");
        break;
      case "香蕉":
        alert("2.8元一斤");  //2.8元一斤
        break;
      case "荔枝":
        alert("15元一斤");
        break;
      case "梨子":
        alert("2.3元一斤");
        break;
      default:
        alert("这个水果我这没有!")
    }
  • 定义一个函数,对数组的元素进行随机排序。
  • 步骤:
  • 定义一个新数组
  • 生成随机数,随机数的范围 数组的下标范围。
  • 用这个随机数去数组中取值,放入新数组。
  • 将放入新数组中的元素,从原数组中删除。
  • 删除之后,从第2步循环。直到原数组中的元素全部放入新数组中结束。 因为原数组的元素每一次循环都会被删除一个,数组的下标也会发生变化。
    var arr = [1, 2, 3, 4, 5, 6];
    function random(arr) {
      // 1.定义一个新数组
      var newArr = [];
      //5.循环2-4 直到原数组中的元素全部放入新数组中结束。
      // while (arr.length>0) {
      //    //2.生成随机数 随机数的范围为数组的下标范围。
      //   var index = parseInt(Math.random()*arr.length);
      //   // 3.用这个随机数去数组中取值,放入新数组。
      //   newArr.push(arr[index]);
      //   // 4.将放入新数组中的元素,从原数组中删除。
      //   arr.splice(index,1);
      // }
      var x = arr.length;
      for (var i = 0; i < x; i++) {
        //2.生成随机数 随机数的范围为数组的下标范围。
        var index = parseInt(Math.random() * arr.length);
        // 3.用这个随机数去数组中取值,放入新数组。
        newArr.push(arr[index]);
        // 4.将放入新数组中的元素,从原数组中删除。
        arr.splice(index, 1);
      }
      return newArr;
    }
    console.log(random(arr));  //随机在数组中输出6个数字
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值