javaScript高程笔记--最佳实践
1.可维护性
《1》什么是可维护的代码
(1)可理解性
(2)直观性
(3)可适应性
(4)可扩展性
(5)可调试性
《2》代码约定
(1)可读性---适当的进行注释【函数和方法、大段代码、复杂的算法、Hack浏览器差异性】
(2)变量和函数名--语义化
(3)变量类型透明---一眼看出来是什么类型的数据
《3》松散耦合---代码最好不要交叉---排错方便
(1)HTML和JavaScript
(2)Css和JavaScript
(3)应用逻辑和事件处理程序(按键、获取DOM-----做了什么事情)
《4》尊重对象的所有权
(1)不要为实例或原型添加属性或方法
(2)不要重新定义已经存在的方法
(3)尽量避免全局变量
var totalObj = {name:"123",funName: function() {console.log(1); }
}
(4)避免与null进行比较
如果是引用类型的话使用insinstanceof检查其类型
如果是基本类型使用typetypeof检查其类型
(5)使用常量
重复值
展示给客户使用的字符串类型,方便国际化
Urls
任何可能改变的值
2.性能
《1》注意作用域
避免全局查找
避免不必要的属性查找
《2》优化循环
减值迭代。0---n的递增性能比 n--0递减性能差
简化终止条件
简化循环体
使用后测试循环 do-while
展开循环--循环次数确定,展开循环
原生方法较快,switch语句较快,位运算符语句较快
《3》最小化语句数
1.多个变量声明 var a, b, c;
2.使用数组对象字面量
《4》优化DOM交互
1.最小化现场更新
2.使用innerHTML
3.使用事件代理--冒泡
3.部署
文件压缩
代码验证 ESlint
转载于:https://www.cnblogs.com/jcxfighting/p/9400261.html
javaScript高程笔记--最佳实践相关推荐
- Spotfire在文本区域添加自定义JavaScript代码的最佳实践
这边文章包含了如何在TIBCO Spotfire分析文件的文本区域中以一种可支持和可维护的方式来开发自定义JavaScript代码的最佳实践和建议,因此,这些分析文件将持续与TIBCO Spotfir ...
- JS(高程)最佳实践
在阅读js高程最佳实践章节,将自己感触比较深的点记录下来,也就是自已以前没注意或者不知道的知识点. 一.什么是可维护的代码? 可理解性 直观性 可适应性 可扩展性 可调式性 二.代码约定 1.函数和方 ...
- 超实用的JavaScript技巧及最佳实践
众所周知,JavaScript是一门非常流行的编程语言,开发者用它不仅可以开发出炫丽的Web程序,还可以用它来开发一些移动应用程序(如PhoneGap或Appcelerator),它还有一些服务端实现 ...
- 45个超实用的JavaScript技巧及最佳实践(一)
2019独角兽企业重金招聘Python工程师标准>>> 21. 使用逻辑AND/OR来处理条件语句 var foo = 10; foo == 10 && doSome ...
- 【JS】982- 11个JavaScript代码重构最佳实践
模式和重构之间有着一种与生俱来的关系.从某种角度来看,设计模式的目的就是为许多重构行为提供目标. 1.提炼函数 在JavaScript开发中,我们大部分时间都在与函数打交道,所以我们希望这些函数有着良 ...
- 11个JavaScript代码重构最佳实践
点击上方关注 前端技术江湖,一起学习,天天进步 模式和重构之间有着一种与生俱来的关系.从某种角度来看,设计模式的目的就是为许多重构行为提供目标. 1.提炼函数 在JavaScript开发中,我们大部分 ...
- [译]编写优雅的JavaScript代码 - 最佳实践
[原文]: devinduct.com/blogpost/22- 有没有似曾相识 如果你对于代码,除了关注是否能准确的执行业务逻辑,还关心代码本身是怎么写的,是否易读,那么你应该会关注如何写出干净优雅 ...
- 《深入理解Java虚拟机 - Jvm高级特性与最佳实践(第三版)》阅读笔记
<深入理解Java虚拟机>阅读笔记 本repository为<深入理解Java虚拟机 - Jvm高级特性与最佳实践(第三版)>阅读笔记,因为第一章主要讲的是Java的发展历史, ...
- 前端代码标准最佳实践:javascript篇
2019独角兽企业重金招聘Python工程师标准>>> 前言 最近一直重构项目的前端代码,也参考了各种前端代码的最佳实践,目的是让前端的HTML,CSS,Javacript代码更符合 ...
最新文章
- gearman python 实例
- 数据数组赋值_嵌入式-数组赋值
- 【机器学习】贝叶斯机器学习:经典模型与代码实现
- 利用shell脚本监控网站状态
- AutoCAD VBA天圆地方的放样展开图
- 自定义事件(如未作说明,本博客文档都是用C#代码)
- Unicode数据类型(与ANSI关系和相互转化)
- 《Effective Python》笔记
- mysql 找表重复数据_mysql 数据表中查找重复记录
- PDMS Pipeline Tool 教程(三):材料表
- 实验二木马分析(控制分析)实验和实验三冰河木马实验
- 用计算机算出增长比例公式,复合增长率excel公式(年均复合增长率计算器)
- 如何使用SQL语句根据经纬度计算距离
- 电脑解锁后黑屏有鼠标_电脑开机后黑屏只有一个鼠标箭头怎么办_win10屏幕黑屏就剩鼠标如何修复...
- 介绍一下 ForkJoinPool
- 使用pycharm搭建数据库模型
- Hello World, Hello, 2021
- 软件测试基础知识汇总(问答篇)
- Windows计算器切换模式
- 基于Hadoop HA集群部署HBase HA集群(详细版)