JavaScript中小数的处理

我的方案是转换为字符串来进行处理,因为直接计算小数与任何数相乘(比如整数,小数)浏览器会计算不精确,出现一大段小数的问题  比如
JavaScript中小数的处理

具体方案课参考这段代码



计算小数点位置


function decimalPlaces(n) {
  		
		var p='',i=0;
		p=n+'';
		var indexE=p.indexOf('e');
		var IndexPoint=p.indexOf('.');
		if(indexE!=-1) //搜寻是否采用科学计数法
		{
			
			if(IndexPoint!=-1) //是否有小数点 有则加上小数点
			
			{
				i=indexE-IndexPoint-1+parseInt(p.substring(indexE+2));
				console.log(i);
			}
			
			else  
			{
			i=parseInt(p.substring(indexE+2));
			console.log(i);
			}
			
		}
		
		else if(IndexPoint!=-1) //未采用科学计数法 并且有小数点
		{ 
		
		  i = p.length-IndexPoint-1;console.log(i)
		}
		      
    	  else i=0;//NaN或inificial 或者是整数时
		//console.log(p+'');
//		console.log((p+'').indexOf('e'));
		
		return i;
  
}

你可能感兴趣的:(JavaScript,浏览器)