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

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

最近在学习大数据可视化——图谱,用到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. Spring MVC 复习

    概念 三层架构 将整个业务应用划分为三层 ​ 表现层:用来和客户端进行数据交互,一般采用MVC设计模式 ​ 业务层:处理公司具体业务逻辑 ​ 持久层:用来操作数据库 MVC模型 Model View ...

  2. Windows中常用工具

    护眼软件 f.lux https://justgetflux.com/ Typora https://www.typora.io/ Markdown工具,小巧,方便. Snipaste https:/ ...

  3. 谈谈游戏服务端SDK接入

    “接sdk其实本质上就是一个对着接口文档写adaptor的工作,重复和无味.” 团队减员,身负多职,上一次调SDK已经可以回溯到游戏测试前夕了... 一般SDK只包含验证和支付功能,绝少部分SDK包含 ...

  4. WebStorm eslint插件报错解决 - TypeError: this.CliEngine is not a constructor

    将eslint更新版本后,出现TypeError: this.CliEngine is not a constructor的错误. 解决办法: 1.编辑 X:\WebStorm\plugins\Jav ...

  5. ThinkPHP5 Nginx通用配置

    项目配置内容如下: server { #配置监听端口 listen 80; listen [::]:80; #设置网站根目录作为变量root set $root /var/www/web; #设置网站 ...

  6. mysql 获取指定日期到指定日期 区间段的日期

    第一种方法: cross join (就相当于mysql中的循环) CROSS JOIN 把两张表中的数据进行 N * M的组合,即笛卡尔积 这里的两张表利用 union all都有5条数据,所以进行 ...

  7. 英语catarinite天铁托甲catarinite镍铁陨石

    中文名称:天铁 镍铁陨石(catarinite)是铁质陨石的一种,发现地有南非,美国,澳洲,南极大陆等.镍铁陨石有著美丽的韦德曼交纹及高含量的镍成分,因此不易氧化,大部分都用来制造饰品或展现陨石韦德曼 ...

  8. Python 的稀疏矩阵

    什么是稀疏矩阵 简单的说,如果一个矩阵中大部分元素为0,就被称为稀疏矩阵. 对于稀疏矩阵而言,实际存储的数据项很少.如果在计算机中采用传统的二维数组(Python中用二维列表)来存储稀疏矩阵,就会浪费 ...

  9. 字符串转换成float和double类型

    double strtod(const char *nptr, char **endptr); float strtof(const char *nptr, char **endptr); long ...

  10. consul:架构

    官方文档:https://www.consul.io/docs/internals/architecture.html