💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
#### 1、问题描述 用paseFloat()方法做了个运算两分钟就把页面卡死了 #### 2、问题原因 **原始写法经过了6个步骤:** 1. total / allTotal的结果是一个number类型的值 2. 调用.toFixed方法number转换成string 3. 为了乘以100,string隐式转换成number 4. 乘以100 5. 调用parseFloat函数 5. 为了拼接字符串,number隐式转换成string 6. 拼接字符串 **优化后的写法只经过3个步骤:** 1. total / allTotal的结果是一个number类型的值 2. toFixed方法number转换成string 3. 拼接字符串 #### 3、解决方案 运算方式调整下 ```javascript // 原始写法 var name = $(this).text() var total = 0 var rate = 0 if(name=='刑事') { total = newData.xingshi.total rate = parseFloat( (total/allTotal).toFixed(2) * 100) + '%' }else{ total = newData.qingbao.total rate = parseFloat( (total/allTotal).toFixed(2) * 100) + '%' } // 优化后的写法 var name = $(this).text() var total = 0 var rate = 0 if(name=='刑事') { total = newData.xingshi.total }else{ total = newData.qingbao.total } rate =( (total/allTotal) * 100) .toFixed(2)+ '%' ```