JS-结合html综合练习js的对象——班级成绩表制作

<!DOCTYPE html>
<html>

<head>
<meta charset="UTF-8">
<title>对象综合练习</title>
<style type="text/css">
body {
font: 14px "微软雅黑";
}

span {
padding: 5px;
}

table {
margin: 0 auto;
border: 3px solid cornflowerblue;

}
tr{
border: 1px solid #4169E1;
}
td#y,#m,#d,#day{
border:none;
}
</style>

</head>

<body>
<table>
<caption style="background-color:cornflowerblue;padding:5px 0;color: white;">x班期末成绩表</caption>
<thead>
<tr>
<td id="y"></td>
<td id="m"></td>
<td id="d"></td>
<td id="day"></td>
</tr>
</thead>
<tr>
<td>姓名</td>
<td>成绩</td>
<td>备注</td>
</tr>
<tr>
<td>小明</td>
<td>87</td>
</tr>
<tr>
<td>小花</td>
<td>81</td>
</tr>
<tr>
<td>小红</td>
<td>97</td>
</tr>
<tr>
<td>小天</td>
<td>76</td>
</tr>
<tr>
<td>小张</td>
<td>54</td>
<td>不及格</td>
</tr>
<tr>
<td>小小</td>
<td>94</td>
</tr>
<tr>
<td>小西</td>
<td>90</td>
</tr>
<tr>
<td>小舞</td>
<td>66</td>
</tr>
<tr>
<td>小迪</td>
<td>64</td>
</tr>
<tr>
<td>小曼</td>
<td>76</td>
</tr>
<tr>
<td>总分</td>
<td id="sum"></td>
</tr>
<tr>
<td>平均分</td>
<td id="b"></td>
</tr>
</table>
<script type="text/javascript">
var mydate = new Date();
// document.write(mydate);
document.getElementById(‘y‘).innerText = mydate.getFullYear() + ‘年‘;
var monthArr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
document.getElementById(‘m‘).innerText = monthArr[mydate.getMonth()] + ‘月‘; //这里注意,直接导出getMonth的值,会比实际月份少1,这是因为,月份是从1-12,而getMonth返回的值则是从0-11,就和星期的返回方法是一样的。所以解决方法也一样,利用返回的值,当做数组的下标调用,对应出正确的月份。用alert(mydate.getMonth())才发现了这个问题,进而解决掉。所以说alert是调试bug的必备良药。
// alert(mydate.getMonth());
document.getElementById(‘d‘).innerText = mydate.getDate() + ‘日‘; //获得日的方法
//星期
var dayArr = [‘星期日‘, ‘星期一‘, ‘星期二‘, ‘星期三‘, ‘星期四‘, ‘星期五‘, ‘星期六‘];
document.getElementById(‘day‘).innerHTML = dayArr[mydate.getDay()];

//成绩信息
var myArr = [[‘小明‘, 87],[‘小花‘, 81],[‘小红‘, 97],[‘小天‘, 76],[‘小张‘, 54],[‘小小‘, 94],[‘小西‘, 90],[‘小舞‘, 66],[‘小迪‘, 64],[‘小曼‘, 76]];
// alert(myArr[0]);
// alert(myArr[0][1]);
var sum = 0;
for(var i=0;i<myArr.length;i++){
sum += myArr[i][1];
// alert(myArr[i][1]);
// document.write(myArr[i][0]+‘<br />‘);
}
// document.write(sum);
document.getElementById(‘sum‘).innerText = sum;
var pjf = sum/myArr.length;
document.getElementById(‘b‘).innerHTML = Math.round(pjf);
</script>

</body>

</html>

时间: 2024-08-07 16:55:48

JS-结合html综合练习js的对象——班级成绩表制作的相关文章

js最好的继承机制:用对象冒充继承构造函数的属性,用原型链继承 prototype 对象的方法。

js最好的继承机制:用对象冒充继承构造函数的属性,用原型prototype继承对象的方法. function ClassA(sColor) { this.color = sColor; } ClassA.prototype.sayColor = function () { alert(this.color); }; function ClassB(sColor, sName) {//在 ClassB 构造函数中,用对象冒充继承 ClassA 类的 sColor 属性 ClassA.call(th

使用js把json字符串转为js对象的方法

ECMA-262(E3) 中没有将JSON概念写到标准中,还好在 ECMA-262(E5)中JSON的概念被正式引入了,包括全局的JSON对象和Date的toJSON方法. 1,eval方式解析,恐怕这是最早的解析方式了.如下: 复制代码代码如下: function strToJson(str){ var json = eval('(' + str + ')'); return json; } 记得别忘了str两旁的小括号. 这里属性名可以使用数字,可以带引号也可以不带引号.如果属性名是纯数字,

easyui 弹出框调用外部js函数 提示“Microsoft JScript 运行时错误: 缺少对象”

昨天遇见一个很诡异的问题 我用easyui做了一个网站,其中有一个a页面和一个b页面,我通过easyui的window功能,在a页面中弹出了一个b页面,在b页面中,我用到了一个外部js的函数c,我在b页面中我也引用了这个js文件,但是每次js代码走到函数c时,就是提示“Microsoft JScript 运行时错误: 缺少对象”,明明引用了js,为什么还提示没有对象呢?真是活见鬼了,结果折腾了好长一段时间后,我才猛然发现,原来easyui的弹出框其实就是个div,b页面就相当于是嵌入到b页面中的

Node.js:get/post请求、全局对象、工具模块

一.GET/POST请求 在很多场景中,我们的服务器都需要跟用户的浏览器打交道,如表单提交.表单提交到服务器一般都使用 GET/POST 请求. 1.获取GET请求内容 由于GET请求直接被嵌入在路径中,URL是完整的请求路径,包括了?后面的部分,因此你可以手动解析后面的内容作为GET请求的参数.node.js 中 url 模块中的 parse 函数提供了这个功能. var http = require('http'); var url = require('url'); var util =

js将json数组转成tree对象

昨天遇到一道面试题,手写js将json数组转成tree对象,昨天写错了,今天特意想了下,思路其实挺简单,循环+递归,获取子节点对象. 1 let data = [ 2 {'parent_id': 0, 'id': 1, 'value': 'XXX'}, 3 {'parent_id': 1, 'id': 3, 'value': 'XXX'}, 4 {'parent_id': 4, 'id': 6, 'value': 'XXX'}, 5 {'parent_id': 3, 'id': 5, 'valu

Thymleaf js直接获取后台传过来的对象或者对象的属性

简单说明:第一次接触thymleaf模板,对于thymleaf在js中如何获取后台传递过来的值,真的挺简单的,记住就行了 代码: 后台代码: //传递一个org对象给jspublic String toEdit(ModelMap map, String orgId) { try { Org org = ohOrgManager.findById(orgId); map.addAttribute("currentOrg", org); } catch (Exception e) { e.

JS-纯js制作动态成绩表(流程控制语句+js内置对象)

流程控制for循环+if判断+Math对象+Array对象+Date对象制作成绩表 <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>综合运用</title> <style type="text/css"> body { text-align: center; font: 14px "微软雅黑";

使用Underscore.js的template将Backbone.js的js代码和html代码分离

这段时间在学习Require.js和Backbone.js的过程中,发现有些项目里的HTML代码都是写在View的js代码里面的,渲染的时候需要对Collection进行循环,再将HTML代码拼接上去,这似乎不是一件非常好的事情,因为将js代码和html代码融合到一起会增加代码的维护难度,而且这个过程中考虑到性能的因素,需要将HTML代码放到一个数组中,最后进行拼接,代码写起来比较麻烦.我看到他们的代码之后就在考虑是否有一种类似php模板引擎的东西可以将Collection传递进去然后渲染. 我

蓝鸥原生JS:js的引入方式及js的基本数据类型

蓝鸥原生JS:js的引入方式及js的基本数据类型 蓝鸥零基础学习HTML5-html+css基础 http://11824614.blog.51cto.com/11814614/1852769 js的引入方式 在一对 script 标签中引入js代码 通过这种方式引入,可以把js代码和html代码写在同一个文件中,但是注意:最好把js代码写在body之后,文档的加载顺序是从上到下加载的,先把页面内容渲染出来,再加入用户交互,这样用户体验会大大加强. 示例代码: <html lang="en