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

javaScript高程笔记--最佳实践的更多相关文章

  1. javascript编程的最佳实践推荐

    推荐的javascript编程的最佳实践,摘要记录在这里: 可维护的代码保证代码的性能部署代码 1 可维护的代码1.1什么是维护的代码:可理解性——其他人可以接手代码并理解它的意图和一般途径,而无需原 ...

  2. (译) 《Javascript 24条最佳实践》

    (摘录) <Javascript 24条最佳实践> 自己一直偏向于实用主义,不是学院派,不是学究派,只讲究把东西能够很好的做出来,但经过一段时间的开发工作当自己总结出来一些东西时,觉得挺有 ...

  3. 《modern-php》 - 阅读笔记 - 最佳实践

    过滤.验证和转义数据 过滤数据 不要相信任何外部数据! 常见的有以下几种数据需要过滤:HTML,SQL查询,用户提交的信息(邮件地址.电话号码.身份证) HTML htmlentities() HTM ...

  4. 【转】超实用的JavaScript技巧及最佳实践

    众所周知,JavaScript是一门非常流行的编程语言,开发者用它不仅可以开发出炫丽的Web程序,还可以用它来开发一些移动应用程序(如PhoneGap或Appcelerator),它还有一些服务端实现 ...

  5. 超实用的JavaScript技巧及最佳实践

    众所周知,JavaScript是一门非常流行的编程语言,开发者用它不仅可以开发出炫丽的Web程序,还可以用它来开发一些移动应用程序(如PhoneGap或Appcelerator),它还有一些服务端实现 ...

  6. 超实用的JavaScript技巧及最佳实践(上)

    在这篇文章中,作者将会向大家分享JavaScript开发的小技巧.最佳实践等非常实用的内容,不管你是前端开发者还是服务端开发者,都应该来看看这些小技巧,它们绝对会让你受益的. 文中所提供的代码片段都已 ...

  7. JavaScript Web 应用最佳实践分析

    [编者按]本文作者为 Mathias Schäfer,旨在回顾在客户端大量使用JavaScript 的最佳 Web应用实践.文章系国内 ITOM 管理平台 OneAPM 编译呈现. 对笔者来说,Jav ...

  8. Javascript继承之最佳实践

    尊重原创,转载请注明出处:http://blog.csdn.net/zoutongyuan 什么是继承? 继承是面向对象最显著的一个特性.继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和 ...

  9. JAVASCRIPT高程笔记-------第五章 引用类型

    一.Object类型 1.1创建方式 ①new关键字 : var person = new Oject(); ②给定直接量: var person = { name : "zhangsan& ...

随机推荐

  1. Koa源码解析

    Koa是一款设计优雅的轻量级Node.js框架,它主要提供了一套巧妙的中间件机制与简练的API封装,因此源码阅读起来也十分轻松,不论你从事前端或是后端研发,相信都会有所收获. 目录结构 首先将源码下载 ...

  2. spring数据源、数据库连接池

    什么是数据源.数据库连接池? DataSource通常被称为数据源,它包含连接池和连接池管理两个部分,习惯上也经常把DataSource称为连接池. 数据库连接池的基本思想:为数据库连接建立一个“缓冲 ...

  3. LeetCode (226):Invert Binary Tree 递归实现

    Invert a binary tree. 4 / \ 2 7 / \ / \ 1 3 6 9 to 4 / \ 7 2 / \ / \ 9 6 3 1 Trivia:This problem was ...

  4. 在Linux终端管理文件你要知道的11个命令

    LS - 列表文件 ls命令列出目录中的文件. 默认情况下,使用ls列出当前目录下的文件. 2 你也可以列出文件递归-也就是说,列出所有文件在当前目录中的目录-使用ls -R.LS还可以列出在其他目录 ...

  5. 总结的一些json格式和对象/String/Map/List等的互转工具类

    总结的一些json格式和对象/String/Map/List等的互转工具类,有需要的可以看看,需要引入jackson-core-asl-1.7.1.jar.jackson-jaxrs-1.7.1.ja ...

  6. CNN卷积减少参数个数的理解(分为全连接到CNN三个层级)

    参考连接 : https://blog.csdn.net/accumulate_zhang/article/details/77816566 1000*1000 的图像, 1000000个隐层神经元, ...

  7. js去除前后空格

    <script language="javascript"> String.prototype.trim=function(){     return this.rep ...

  8. linux 卸载jdk和安装

    卸载JDK 1.先输入java -version 查看是否安装了jdk 2.如果安装了,检查下安装的路径 which java(查看JDK的安装路径) 3.卸载 rm -rf JDK地址(卸载JDK) ...

  9. think in java

    1.public private protected

  10. Codeforces Round #365 (Div. 2) B - Mishka and trip

    http://codeforces.com/contest/703/problem/B 题意: 每个点都有一个值,每条边的权值为这两个点相乘.1~n成环.现在有k个城市,城市与其他所有点都相连,计算出 ...