前端第二阶段-11(JavaScript练习之数组array)

数组交换

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
</head>

<body></body>
<script>
    // 数组交换
    let a = [1, 2];
    let t;
    t = a[1];
    a[1] = a[0];
    a[0] = t;
    console.log(a[0] + "\n" + a[1]);
</script>

</html>

最大值

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    // 求最大值
    let arr=[12,34,56,23];
    let max=arr[0];
    for(let i=0;i<arr.length;++i){
        if(max<arr[i]){
            max=arr[i];
        }
    }
    console.log("最大值为:",max);
</script>
</html>

最小值

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
</head>

<body></body>
<script>
    // 求最小值
    const arr = [23, 45, 754, 1, 12, 3];
    //假设第一个为最小的
    let min = arr[0];
    //等价于for(let i=0;1<arr.length;++i)
    for (let i = 0; i <= arr.length - 1; ++i) {
        if (min > arr[i]) {
            min = arr[i];
        }
        console.log("arr[" + i + "]" + arr[i]);
    }
    console.log("最小值:"+min);
</script>

</html>

 

去掉重复的值

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
</head>

<body></body>
<script>
    // 去除数组中重复的元素
    const arr = [1, 1, 4, 2, 65, 4, 2];
    let newArr = [];
    for (let i = 0; i < arr.length; ++i) {
        //如果arr数组的元素,不在newArr数组里面就添加到newArr
        if (newArr.indexOf(arr[i]) == -1) {
            newArr.push(arr[i]);
        }
    }
    console.log(newArr);
</script>

</html>

奇数偶数

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    // 奇数偶数
    let arr=[1,2,5,6,4,34,5,6,78];
    for(let i=0;i<arr.length;++i){
        if(arr[i]%2===0){
            console.log("偶数\t"+arr[i]);
        }else{
            console.log("奇数\t"+arr[i]);
        }
    }
</script>
</html>

输出[1,3,5,7,24,32,25,48]的平均数

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    /*
        输出[1,3,5,7,24,32,25,48]的平均数
    */ 
    let arr=[1,3,5,7,24,32,25,48];
    let sum=0;
    for(let i=0;i<arr.length;++i){
        console.log("arr["+i+"]:"+arr[i]);
        sum=sum+arr[i]
    }
    console.log("[1,3,5,7,24,32,25,48]的平均数为"+String(sum/arr.length));
</script>
</html>

输出年级是大一,性别是女生所有人的名字

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
</head>

<body></body>
<script>
    /*
        输出年级是大一,性别是女生所有人的名字
    */
    const data = [
        { name: "小a", gender: "女", age: 21, grade: "大一" },
        { name: "小c", gender: "男", age: 21, grade: "大一" },
        { name: "小e", gender: "女", age: 21, grade: "大三" },
        { name: "小g", gender: "女", age: 21, grade: "大一" },
    ];

    // 大一女生的名字
    const res = [];
    for (let i = 0; i < data.length; ++i) {
        if (data[i].gender === "女" && data[i].grade === "大一") {
            res.push(data[i].name);
        }
    }
    console.log(res); // ["小a", "小g"]
</script>

</html>

输出年级是大一,性别是女生所有人的名字

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body></body>
  <script>
    /*
        输出年级是大一,性别是女生所有人的名字
    */
    const data = [
      ["小A", "女", 21, "大一"],
      ["小B", "男", 23, "大三"],
      ["小C", "男", 24, "大四"],
      ["小D", "女", 21, "大一"],
      ["小E", "女", 22, "大四"],
      ["小F", "男", 21, "大一"],
      ["小G", "女", 22, "大二"],
      ["小H", "女", 20, "大三"],
      ["小I", "女", 20, "大一"],
      ["小J", "男", 20, "大三"],
    ];

    // 大一女生的名字
    const res = [];
    for (let i = 0; i < data.length; ++i) {
        if (data[i][1] === "女" && data[i][3] === "大一") {
            res.push(data[i][0]);
        }
    }

    console.log(res); // ["小A", "小D", "小I"]
  </script>
</html>

猜数字游戏,有一个0-50的随机数,玩家有5次输入机会,每猜一次都要将结果告诉玩家是小了,还是大了;若5次机会内猜中,输出“聪明”,程序结束;若5次机会用完,程序直接结束

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>

  <body></body>
  <script>
    /*
        猜数字游戏,有一个0-50的随机数,玩家有5次输入机会
        每猜一次都要将结果告诉玩家是小了,还是大了
        若5次机会内猜中,输出“聪明”,程序结束
        若5次机会用完,程序直接结束
    */
    let rand = parseInt(Math.random() * (50 + 1) + 0);
    console.log(rand);
    for (let i = 0; i < 5; ++i) {
      inputNum = parseInt(
        window.prompt(
          "猜数字游戏:猜一个0-50的数字,你只有五次猜的机会哟(^U^)ノ~\n请输入你的数字:"
        )
      );
      if (i <= 5) {
        if (inputNum > 50 || inputNum < 0) {
          alert(
            "输入有误,请输入0-50的数字!\ " +
              "你已经用了\t" +
              (i + 1) +
              "次机会哟"
          );
        } else if (inputNum < rand) {
          alert(
            "请重新输入,你输入的数小了!\ " +
              "你已经用了\t" +
              (i + 1) +
              "次机会哟"
          );
        } else if (inputNum > rand) {
          alert(
            "请重新输入,你输入的数大了!\ " +
              "你已经用了\t" +
              (i + 1) +
              "次机会哟"
          );
        } else if (inputNum === rand) {
          alert("聪明");
          break;
        }
      } else {
        alert("5次机会已用完");
        break;
      }
    }
  </script>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值