JS保留强制保留小数点后面几位并且四舍五入
1、一、文本框输入限制相关
/**
文本框只允许输入数字
**/
function IsNumber(obj) {
$("#" + obj).bind("contextmenu", function () {
return false;
});
$("#" + obj).css('ime-mode', 'disabled');
$("#" + obj).keypress(function (e) {
if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
return false;
}
});
}
/**
只能输入数字和小数点
**/
function IsMoney(obj) {
$("#" + obj).bind("contextmenu", function () {
return false;
});
$("#" + obj).css('ime-mode', 'disabled');
$("#" + obj).bind("keydown", function (e) {
var key = window.event ? e.keyCode : e.which;
if (isFullStop(key)) {
return $(this).val().indexOf('.') < 0;
}
return (isSpecialKey(key)) || ((isNumber(key) && !e.shiftKey));
});
function isNumber(key) {
return (key >= 48 && key <= 57) || (key >= 96 && key <= 105)
}
function isSpecialKey(key) {
//return key == 46 || (key >= 37 && key <= 40) || key == 35 || key == 36 || key == 9 || key == 13
return key == 8 || key == 46 || (key >= 37 && key <= 40) || key == 35 || key == 36 || key == 9 || key == 13
}
function isFullStop(key) {
return key == 190 || key == 110;
}
}
2、二、数字格式转换
/**
* 金额格式(保留2位小数)后格式化成金额形式
*/
function FormatCurrency(num) {
num = num.toString().replace(/\$|\,/g, '');
if (isNaN(num))
num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num * 100 + 0.50000000001);
cents = num % 100;
num = Math.floor(num / 100).toString();
if (cents < 10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3) ; i++)
num = num.substring(0, num.length - (4 * i + 3)) + '' +
num.substring(num.length - (4 * i + 3));
return (((sign) ? '' : '-') + num + '.' + cents);
}
/**
保留两位小数
功能:将浮点数四舍五入,取小数点后2位
**/
function ToDecimal(x) {
var f = parseFloat(x);
if (isNaN(f)) {
return 0;
}
f = Math.round(x * 100) / 100;
return f;
}
3、三、数组是否存在某值
/**
查找数组中是否存在某个值
arr:数组
val:对象值
**/
function ArrayExists(arr, val) {
for (var i = 0; i < arr.length; i++) {
if (arr[i] == val)
return true;
}
return false;
}