数据结构与算法JavaScript描述[第二章](数组)
来源:互联网 发布:安卓免费源码分享网站 编辑:程序博客网 时间:2024/05/16 15:12
1.创建一个记录学生成绩的对象,提供一个添加成绩的方法,以及一个显示学生平均成绩的方法。
var Grade = function () { var _this = this; //成绩存储 _this.gradeStore = []; //添加成绩 _this.add = function (name,score) { if(name && score){ _this.gradeStore.push({ name:name, score:score }); }else{ throw '姓名或分数不能为空'; } } //显示平均成绩 _this.showAverage = function () { var sum = 0; for(var index in _this.gradeStore){ sum += _this.gradeStore[index]['score']; } return sum / (parseInt(index) + 1); } } var grade = new Grade(); grade.add('a',30); //学生a 成绩30 grade.add('b',40); grade.add('c',20); console.log(grade.showAverage()); //控制台输出平均成绩
2.将一组单词存储在一个数组中,并按正序和倒序分别显示这些单词
//单词排序 正序 或 倒序 var SortWord = function () { var _this = this; _this.wordStore = ['zhang','apple','panel','pen','dong','qing']; var strategy = { //正序 asc:function () { _this.wordStore.sort(); }, //倒序 desc:function () { _this.wordStore.sort(function (a,b) { return b > a; }); } }; _this.sort = function (rule) { strategy[rule](); return _this.wordStore; } } console.log(new SortWord().sort('asc'));
3.修改本章前面出现过的weeklyTemps对象,使它可以使用一个二维数组来存储每月的有用数据。增加一些方法用以显示月平均数,具体某一周平均数和所有周平均数。
//气温 var Temp = { //温度存储 monthTempStore:[], //周温度存储 weekTempStore:[], add:function (by,key,temp) { var strategy = { month:function (month) { Temp.monthTempStore[month] = Temp.monthTempStore[month] || new Array(); Temp.monthTempStore[month].push(temp); }, week:function (week) { Temp.weekTempStore[week] = Temp.weekTempStore[week] || new Array(); Temp.weekTempStore[week].push(temp); } }; strategy[by](key); }, average:function (by,key) { var sum = 0; var i = 0; var strategy = { month:function () { for(;i < Temp.monthTempStore[key].length; i++){ sum += Temp.monthTempStore[key][i]; } return sum / i; }, week:function () { for(;i < Temp.weekTempStore[key].length; i++){ sum += Temp.weekTempStore[key][i]; } return sum / i; }, allWeek:function () { var index = 0; for(;i < Temp.weekTempStore.length; i++){ if(Temp.weekTempStore[i]){ for(var j = 0 ; j < Temp.weekTempStore[i].length; j++){ sum += Temp.weekTempStore[i][j]; ++index; } } } return sum / index; } }; return strategy[by](); } };// 存储每个月有用数据 Temp.add('month',1,20); Temp.add('month',1,30); Temp.add('month',1,30); //1月份平均温度 => 月平均数 console.log(Temp.average('month',1)); Temp.add('week',1,30); Temp.add('week',1,40); Temp.add('week',2,40); //第1周温度平均数 => 某一周平均数 console.log(Temp.average('week',1)); //所有周平均数 console.log(Temp.average('allWeek'));
4.创建这样一个对象,它将字母存储在一个数组中,并且用一个方法可以将字母连在一起,显示成一个单词。
var Word = { letters:['p','p','a','p'], getWord:function () { return this.letters.join(''); } }; console.log(Word.getWord());
1 0
- 数据结构与算法JavaScript描述[第二章](数组)
- 数据结构与算法JavaScript描述 | 数组
- 数据结构与算法C#语言描述第二章数组与ArrayList类
- javascript数据结构和算法 第二章 (数组)
- 数据结构与算法(javascript描述)——2. 数组
- 《数据结构与算法JavaScript描述》
- JAVA数据结构与算法-第二章-数组
- 数据结构与算法描述第(第二章示例)
- 第三章:数据结构与算法javascript描述: 列表
- 数据结构与算法JavaScript描述[第三章](列表)
- 数据结构与算法JavaScript描述[第五章](队列)
- 数据结构与算法JavaScript描述[第六章](链表)
- 数据结构与算法JavaScript描述[第七章](字典)
- 数据结构与算法javascript描述第2章
- 数据结构与算法javascript描述之队列
- javascript数据结构和算法 第二章 (数组) 二
- Javascript数据结构与算法---数组
- 数据结构与算法JavaScript - 数组
- C++ map嵌套应用
- Eclipse基本操作
- 又回到最初的起点——数据结构和算法
- scrollview嵌套listview,重写listview的onMeasure方法后listview中的图片只能显示一张
- 48. spring boot单元测试restfull API【从零开始学Spring Boot】(
- 数据结构与算法JavaScript描述[第二章](数组)
- 二叉树的基本操作
- 49. spring boot日志升级篇—理论【从零开始学Spring Boot】(
- 将ACCESS数据库迁移到SQLSERVER数据库方法(图文详解)
- 简单实现分页
- Retrofit的进阶之路(二)添加请求头和上传图片
- 关于自定义dialog中textview的显示的问题
- 不忘初心,2017年加油!!
- javascript高级语言程序设计四