博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
原声写法操作table
阅读量:6963 次
发布时间:2019-06-27

本文共 3187 字,大约阅读时间需要 10 分钟。

最近有些时间,帮助一个朋友写了一个系统类型的计算题,涉及了如何使用原生demo操作table

业务需求

1.当点击先来先服务算法获取 进程 创建时间 运行时间 进行计算

2.点击短作业算法 获取 进程 创建时间 运行时间 进行计算

// 计算服务算法	     function CalculationServices(){			 var obj= new Calculation()			 obj.CalculationServices();		 }		 // 计算作业算法	     function CalculationWork(){			var obj=new Calculation()			obj.CalculationWork()		 }		  // 清除		  function Calculationclear(){			//alert('清除')		 }		 function Calculation(){			 // 获取值 			 this.process= this.Obtain(0);			 this.Creation= this.Obtain(1);			 this.Running= this.Obtain(2);		 }		 // 短作业算法 		 Calculation.prototype.CalculationWork= function (){						// 开始计算			var EndTime=this.EndTime([this.process,this.Creation,this.Running])			var TurnoverTime =this.TurnoverTime([process,Creation,Running])			var WeightedTurnoverTime=this.WeightedTurnoverTime([process,Creation,Running])			// 设置值			this.settdValue(EndTime,3)			this.settdValue(TurnoverTime,4)			this.settdValue(WeightedTurnoverTime,5)		 }		 // 先来先服务算法 		 Calculation.prototype.CalculationServices=function(){			// 开始计算			var EndTime=this.EndTime()			var TurnoverTime =this.TurnoverTime()			var WeightedTurnoverTime=this.WeightedTurnoverTime()			// 设置值			this.settdValue(EndTime,3)			this.settdValue(TurnoverTime,4)			this.settdValue(WeightedTurnoverTime,5)		 }		 		 // 结束时刻	公式	     Calculation.prototype.EndTime= function(){           var process=  this.process;var Creation=  this.process;var Running=  this.process;			 var data=[]				for(var t in process[0]){					data.push(                        process[0][t]+Creation[1][t]+Running[2][t]					)				}			return data		 }		 // 周转时间 公式		 Calculation.prototype.TurnoverTime =function (){             var process=  this.process;var Creation=  this.process;var Running=  this.process;			var data=[]				for(var t in process[0]){					data.push(						(process[0][t]+Creation[1][t])-Running[2][t]					)				}			return data		 }		 // 带权周转时间 公式		 Calculation.prototype.WeightedTurnoverTime= function (){             var process=  this.process;var Creation=  this.process;var Running=  this.process;			var data=[]				for(var t in process[0]){					data.push(                        process[0][t]+Creation[1][t]+Running[2][t]					)				}			return data		 }		 // 获取进程 创建时间 运行时间			Calculation.prototype.Obtain = function (index){			 var dataObject=[];			 var table = document.querySelector('table');			 dataObject=gettdValue(table,index);			 return dataObject;		 }		 // 获取td		 function gettdValue(table,i){			 var value={};			var td= table.querySelectorAll('tr')[i].querySelectorAll('td');			td.forEach(function(element,index){				if(index!==0){					value[index-1]= element.querySelector('input').value?parseFloat(element.querySelector('input').value):element.querySelector('input').value				}			});			return value		 }		 // 设置值		 Calculation.prototype.settdValue= function (dataValue,i){			var   gettype=Object.prototype.toString;			if(gettype.call(dataValue)!=='[object Array]'){				alert("类型错误");				return;			}			 var value={};			 var table = document.querySelector('table');			dataValue.forEach(function(value,index){					var td= table.querySelectorAll('tr')[i].querySelectorAll('td');					td[index+1].innerHTML=value;			});			return value		 }复制代码

转载地址:http://dtwsl.baihongyu.com/

你可能感兴趣的文章
不间断向左滚动代码
查看>>
CentOS服务器安全设置
查看>>
rhel和centos软件包管理
查看>>
我的友情链接
查看>>
select 数据绑定
查看>>
EMC PowerPath
查看>>
解决Win7与2003/XP网络访问错误问题
查看>>
关于android:windowNoTitle的问题
查看>>
随机修改nginx端口脚本及思路
查看>>
我的友情链接
查看>>
关于Office365\2016\2013:客户端Excel2016后无法打开xls\xlsx
查看>>
linux下实现ssh免密登录
查看>>
安装jar到本地maven仓库
查看>>
雅虎天气城市代码
查看>>
nginx网站基本配置过程
查看>>
用Python访问SqlServer,window和linux下的不同操作
查看>>
离群点、杆杠值、强影响点整合到一幅图
查看>>
服务器TIME_WAIT和CLOSE_WAIT详解和解决办法
查看>>
我的友情链接
查看>>
centos6.4 搭建svn服务器
查看>>