#### 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)+ '%'
```
- 1、前端常用知识点
- 1.1 如何修改input的placeholder
- 1.2 如何修改滚动条默认样式
- 1.3 理解BFC
- 1.4 数字每隔三位加逗号
- 1.4.1 简单粗暴的做法
- 1.4.2 比较常用的方法
- 1.5 D3图表中如何让文字竖着显示
- 1.6 Handlebars模板中如何比较两个值
- 1.7 SVG/D3中字体特殊设置
- 1.8 Handlebars模板中序号从1开始排序
- 1.9 修改checkbox默认样式
- 1.10 D3.js 执行transition动画中断
- 2、执法项目
- 2.1 面积图填充为线条样式
- 2.2 一个paseFloat()方法两分钟就把页面卡死了
- 2.3 开发中常见的细节问题
- 3、迪爱斯项目
- 3.1 热点冰点卡死问题
- 3.2 ifream切换导致内存泄漏
- 3.3 D3文字旋转问题
- 3.4 D3图表提示框位置问题
- 3.5 js如何实现页面iframe事件监听
- 3.6 zTree-jQuery 树插件异步加载如何传参
- 3.7 图易加载无延迟隐藏部分页面组件
- 4、指挥大屏项目
- 4.1 长时间运行chrome浏览器奔溃问题
- 5、PC端指挥项目
- 5.1 地图上各区域添加图表并将图表显示在各区域中心位置
- 5.2 svg里面添加image标签该的width,height属性被压缩问题
- 5.3 地图上添加图表或文字后较小的区域无法钻取
- 5.4 svg添加image元素在谷歌低版本不显示
- 5.5 input输入框记住用户名或密码后样式被浏览器自带的样式覆盖
- 6、运维项目
- 6.1 按键F11页面无法缩放
- 6.2 主页面逆时针旋转的两段弧问题
- 6.3 websocket的close方法不起作用
- 7、汉阳项目
- 8、警务云项目
- 8.1 PKI兼容chrome浏览器问题
- 9、万达项目
- 9.1 直方图中出现数值比刻度值大
- 9.2 D3选择集的处理模版
- 9.3 将数字转化为三分位节法
- 9.4 制作简易X轴
- 10、涪陵项目
- 10.1 IE11部分版本浏览器下滚动条位置不对
- 11、昆明大屏展示
- 11.1第一期五个页面经验汇总
- 11.2防止文本越界
- 11.3SVG里面谨慎设置font-family
- 11.4Error: <rect> attribute height: A negative value is not valid
- 12、技侦动态管控
- 12.1 使用CSS3动画导致页面抖动
- 12.2 使用 digitroll数字滚动插件,给数字加逗号(3位数分隔)
- 13、ES6前端开发框架
- 13.1 打包后部署到Tomcat下访问路径不对
- 14、贵阳项目
- 14.1、关于引用不到saga文件报错的问题
- 15、React前端开发框架
- 15.1 this.refs.xxx获取到的值是undefined
- 15.2 Mockjs与mapbox不兼容
- 15.3 axios联调报跨域错误
- 15.4 saga结合websocket使用方法
- 15.5 打包部署后访问页面白屏