一个朋友跟我说要去给某个比赛算分;

规则:去掉最低分最高分求平均分;

最近在学习大数据可视化——图谱,用到js一些东西,所以今天就用js练练

用到知识点:

js限制输入数字能输入小数点,js定义数组,js往数组中添加数据,js将字符型转为数字型,除法结果保留两位小数。

最后通过cpolar将内网暴露,把网址发给朋友,以达到使用的(装X)效果:https://www.cnblogs.com/sengzhao666/p/11912246.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div align="center">
<form action="" method="post" onsubmit="return avg()">
<thead>
<tr ><th colspan=2 style="text-align:center">比赛算分</th></tr>
</thead>
<table>
<tr>
<td>评委1</td>
<!--只能输入数字,能输小数点.-->
<td><input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')" id="score1"></td>
</tr>
<tr>
<td>评委2</td>
<td><input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')" id="score2"></td>
</tr>
<tr>
<td>评委3</td>
<td><input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')" id="score3"></td>
</tr>
<tr>
<td>评委4</td>
<td><input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')" id="score4"></td>
</tr>
<tr>
<td>评委5</td>
<td><input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')" id="score5"></td>
</tr>
<tr>
<td>评委6</td>
<td><input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')" id="score6"></td>
</tr>
</table>
<div>
<button type="submit" >确认</button>
<button type="reset" >重填</button>
</div>
</form>
</div>
<script type="text/javascript">
function avg() {
var score1 = document.getElementById("score1");
var score2 = document.getElementById("score2");
var score3 = document.getElementById("score3");
var score4 = document.getElementById("score4");
var score5 = document.getElementById("score5");
var score6 = document.getElementById("score6"); var s1= parseFloat(score1.value);//强行转换为Float型
var s2= parseFloat(score2.value);
var s3= parseFloat(score3.value);
var s4= parseFloat(score4.value);
var s5= parseFloat(score5.value);
var s6= parseFloat(score6.value); var score=new Array();
score[1]=s1;
score[2]=s2;
score[3]=s3;
score[4]=s4;
score[5]=s5;
score[6]=s6; var min=s1;
var max=s1;
for(var i=1;i<=6;i++){
if(min>score[i]){
min=score[i];
}
}
//alert(min);
for(var i=1;i<=6;i++){
if(max<score[i]){
max=score[i];
}
}
//alert(max);
var count=0;
for(var i=1;i<=6;i++){
count=count+score[i];
}
//alert(count);
var count1=count-min-max;
//alert(count1);
var scoreavg=count1/4;
//alert(scoreavg);
alert("计算平均得分为" + scoreavg.toFixed(2));//保留两位小数
}
</script>
</body>
</html>

运行截图:

js限制输入数字能输入小数点,js定义数组,js往数组中添加数据,js将字符型转为数字型,除法结果保留两位小数——js小测:计算比赛得分的更多相关文章

  1. JS限制input输入的为数字并且有小数的时候最多保留两位小数

    JS限制input用户输入的为数字并且有小数的时候最多保留两位小数,代码如下: html部分: <input type="number" onkeypress="r ...

  2. 数字千分位处理,number.js,js保留两位,整数强制保留两位小数

    杨龙飞 杨龙飞 杨龙飞 杨龙飞 杨龙飞 杨龙飞 官方文档:https://www.customd.com/articles/14/jquery-number-format-redux 1.千分位 $. ...

  3. js 保留两位小数 input要求是数字框,

    要求:input文本框只能输入数字,且只保留两位小数 问题:若设置input的  type="number" ,js处理部分若用到parseFloat方法处理,结果是string类 ...

  4. js保留两位小数数字

    /* * @descript: 保留两位小数,如果小数点大于两位小数,就向上取值保留两位小数<br/> * @time 2016-07-13 */function mathCeil(num ...

  5. js保留两位小数的数字格式化方法

    // 格式化数字(保留两位小数) numberFormat (num) { let percent = Number(num.toString().match(/^\d+(?:\.\d{0,2})?/ ...

  6. js保留两位小数方法总结

    js保留两位小数方法总结 最近在做结算系统,经常需要用到金额保留两位小数,刚开始我一直用的是Angular中的过滤器number |2,但是,这无法满足我的需求.问题是,当用户离开文本框时,我需要将用 ...

  7. 【前端开发】限制input输入保留两位小数

    <input type="text" name='amount' id="cash_num" placeholder="请输入金额" ...

  8. js取整并保留两位小数的方法

    js 四舍五入函数 toFixed(),里面的参数 就是保留小数的位数.注意 toFixed()方法只针对数字类型,如果是字符类型需要使用Number()等方法先转换数字类型再使用 document. ...

  9. (转)JS保留两位小数 四舍五入函数

    本文转载自:http://www.cnblogs.com/446557021/archive/2011/10/13/2211047.html js 四舍五入函数 toFixed(),里面的参数 就是保 ...

随机推荐

  1. 如何在.Net Mvc中让Get,Post请求访问同一个Action的方法

    [HttpPost] [ActionName("Index")] public ActionResult Post(Models.WeChatRequestModel model) ...

  2. Palo Alto GlobalProtect上的PreAuth RCE

    0x00 前言 SSL VPN虽然可以保护企业资产免受互联网被攻击的风险影响,但如果SSL VPN本身容易受到攻击呢?它们暴露在互联网上,可以可靠并安全地连接到内网中.一旦SSL VPN服务器遭到入侵 ...

  3. 创建简易的SpringBoot项目

    创建简易的SpringBoot项目 这两天在学习springboot,菜鸟刚刚知道这个东西,看着springboot项目下那一大堆目录都不知道从何下手,还是静下心来从最简单的创建一个项目入手,这路和大 ...

  4. sqlserver一次性修改多条

    修改客户表 编号为 0101007002,0101007003的楼栋号  007-1-102,007-1-201 UPDATE gas_customerSET building= CASEWHEN g ...

  5. JQuery学习笔记之属性与样式

    .attr()与.removeAttr() attr()有4个表达式 attr(传入属性名):获取属性的值 attr(属性名, 属性值):设置属性的值 attr(属性名,函数值):设置属性的函数值 a ...

  6. python应用-一组数的最大值,最小值,平均数

    def foo(n): c=[] for _ in range (n): var=randint(60,100) c.append(var) print(c) total=0 max = c[0] m ...

  7. Spring Boot 2实现分布式锁——这才是实现分布式锁的正确姿势!

    参考资料 网址 Spring Boot 2实现分布式锁--这才是实现分布式锁的正确姿势! http://www.spring4all.com/article/6892

  8. python 使用 requests 做 http 请求

    1. get import requests # 最简单的get请求 r = requests.get(url) print(r.status_code) print(r.json()) # url ...

  9. SpringBoot——经典的Hello World【二】

    前言 来创建个hello world 呗 步骤 首先肯定是要打开我们的IDEA来创建一个Maven的项目哈 创建项目 1. File->New->Project 2.Maven->J ...

  10. wordpress在首页列出所有分类及分类下的文章

    前面我们谈了wordpress调用指定分类文章,如果想要调用所有分类的文章如何实现呢?比如在wordpress首页列出所有分类及分类下的文章,其实方法类似 <?php $cats = get_c ...