#2
e20182017-07-20 17:26
|
我的html页面代码如下:
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>CKEditor demo</title>
<script type="text/javascript" src="__PUBLIC__/static/js/jquery-3.2.1.min.js"></script>
</head>
<body>
<p>加法数字一: <input style="text" id="first" style="width:40px;" /> </p>
<p>加法数字一: <input style="text" id="second" style="width:40px;" /> </p>
<p>加法结果一: <input style="text" id="jieguo" style="width:40px;" /> </p>
<br />
<p>加法数字二: <input style="text" id="firstaa" style="width:40px;" /> </p>
<p>加法数字二: <input style="text" id="secondaa" style="width:40px;" /> </p>
<p>加法结果二: <input style="text" id="jieguoaa" style="width:40px;" /> </p>
<!--引入加法运算jq -->
<script type="text/javascript" src="__PUBLIC__/static/js/jisuanb.js"></script>
</body>
</html>
以下为我的jisuang中的js代码请各位帮忙优化一下,因为两段自定义function重复太多:
//用.on("input protected")监控html页面里input值的变化,如果有改变就需要重新执行传值
$(document).on("input protected",function(){
$("#jieguo").val(add);
$("#jieguoaa").val(sub);
})
/** 以下为自定义函数,加法一(add)正确计算 **/
/**
* 加法运算,避免数据相加小数点后产生多位数和计算精度损失。
*
* @param num1加数1 | num2加数2
*
* 加数可增加或减少
*/
var add = function numAdd(num1, num2) {
var num1 = $("#first").val();
var num2 = $("#second").val();
var baseNum, baseNum1, baseNum2;
try {
baseNum1 = num1.toString().split(".")[1].length;
} catch (e) {
baseNum1 = 0;
}
try {
baseNum2 = num2.toString().split(".")[1].length;
} catch (e) {
baseNum2 = 0;
}
baseNum = Math.pow(10, Math.max(baseNum1, baseNum2));
return (num1 * baseNum + num2 * baseNum) / baseNum;
};
/** 以下为自定义函数,加法二(sub)正确计算 **/
/**
* 加法运算,避免数据相加小数点后产生多位数和计算精度损失。
*
* @param num1加数1 | num2加数2
*
* 加数可增加或减少
*/
var sub= function numAdd(num1, num2) {
var num1 = $("#firstaa").val();
var num2 = $("#secondaa").val();
var baseNum, baseNum1, baseNum2;
try {
baseNum1 = num1.toString().split(".")[1].length;
} catch (e) {
baseNum1 = 0;
}
try {
baseNum2 = num2.toString().split(".")[1].length;
} catch (e) {
baseNum2 = 0;
}
baseNum = Math.pow(10, Math.max(baseNum1, baseNum2));
return (num1 * baseNum + num2 * baseNum) / baseNum;
};
因为我要在同一html页面中将两个不同的计算结果输出到html页面里两个不同的input里,这样写是可以输出到不同的input里,我想因为这样写重复代码不太合理,请教各位,怎样才能优化成一段代码,并将两个计算结果输出到不同的input里呢?就是代码重用那种。