写jsp的时候需要在前端比较俩个金额大小,自己和测试都没发现问题,但是上线就出bug了。经确认发现是前端在比较金额的时候没有将数字字符串转成number比较,原代码是这么写的:
if(actualMoney > mergeAmount){
top.Dialog.alert("~~~~~~!");
return;
}
后来改成:
if(Number(actualMoney) > Number(mergeAmount)){
top.Dialog.alert("~~~~!");
return;
} 就没问题了。
在网上查了下。js在比较数字字符串的时候,会将字符串的第一个值转成ascii码进行比较