【1】笔试题---期末成绩

题目:

1 高一二班的期末成绩存储在数组a中 老师想知道是否所有人都达到及格标准了 及格标准为d

例如 a=【97, 32, 73, 60】  d = 20  结果:true

例如 a=【80, 30, 76, 83, 90, 5】  d = 95  结果:false

 作答:


<!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>
    <input type="text" id="ainput" placeholder="期末成绩数组a">
    <input type="text" id="dinput" placeholder="及格线d">
    <button id="btn">提交</button>
    <script>
    
       var fn1 = new Function("arr,d",`
        for(var i = 0; i<arr.length;i++){
            if(arr[i] < d){
                return console.log(false);
            }
            return console.log(true);
        }
       `)
       
    //    var arr = [97,32,73,60]
    //    var arr1 = [80, 30, 76, 83, 90, 5] 
    //    fn1(arr,20)
    //    fn1(arr1,95)


       var aInpt = document.getElementById("ainput")
       var dInpt = document.getElementById("dinput")
       var btn = document.getElementById("btn")
       btn.onclick = function(){

          fn1(aInpt.value.split(','),parseInt(dInpt.value))
       }
      
    
       
    </script>
</body>
</html>

解析:

  1. 在第一个输入框内输入所检测的数组
  2. 在第二个输入框内输入规定的及格分数线
  3.  通过new Function 创建了一个函数实例(第一个参数执行的形参,第二个参数是执行的方法体)
  4. 方法体通过for循环,将数组中的每一个元素都有及格分数线d进行比较,如果arr[i] < d,则输出false,如果for循环结束后没有一个满足arr[i] < d,输出true
  5. 通过给按钮添加点击事件,获取到两个输入框中的value值.
  6. 因为获取到的value值是sring类型,将第一个输入框获取到的数据通过split(',')将字符串的每一个字母按照逗号分别分隔开,返回值是一个数组,例如:1,2,3,4,5  => [1,2,3,4,5]
  7. 将第二个输入框获取到的数据通过parseInt(value),将其从字符串转变成number类型,parseInt()会保留整数部分,例如123.1(string) =>123(number)
  8. 将获取到的数组和数字类型当作形参传入函数中,再调用方法就能够实现功能了。

运行结果展示:

                                                                    第一组数据图

                                                                    第二组数据图

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值