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. 20145312 实验二《 Java面向对象程序设计》

    20145312 实验二< Java面向对象程序设计> 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解 ...

  2. Jquery12 Ajax

    学习要点: 1.Ajax 概述 2.load()方法 3.$.get()和$.post() 4.$.getScript()和$.getJSON() 5.$.ajax()方法 6.表单序列化 Ajax ...

  3. MR案例:多文件输出MultipleOutputs

    问题描述:现有 ip-to-hosts.txt 数据文件,文件中每行数据有两个字段:分别是ip地址和该ip地址对应的国家,以'\t'分隔.要求汇总不同国家的IP数,并以国家名为文件名将其输出.解读:M ...

  4. PHP设计模式(五): 原型模式

  5. Lucene TF-IDF 相关性算分公式

    转自: http://lutaf.com/210.htm Lucene在进行关键词查询的时候,默认用TF-IDF算法来计算关键词和文档的相关性,用这个数据排序 TF:词频,IDF:逆向文档频率,TF- ...

  6. layer弹出层的关闭及父页面的刷新问题

    当在主页面执行添加或修改时,用弹出层是比较好的选择,如何关闭弹出层并对父级页面进行操作呢 首先在父级页面中打开一个添加页面(弹出层) 在添加页面的表单提交函数中添加如下代码: function for ...

  7. 【转】chrome 67版本后无法拖拽离线安装CRX格式插件的解决方法

    第一种:开启开发者模式即可 (推荐) chrome  的设置 -> 更多工具 -> 扩展程序,开启开发者模式即可! 第二种方法:修改参数 首先打开下面地址:chrome://flags/# ...

  8. linux一键安装php脚本

    #!/bin/sh echo "----------------------------------start install php --------------------------- ...

  9. VS2012 创建 WebService

    1.文件——新建——项目——Visual C#——Web——ASP.NET 空 Web 应用程序. 2.右键项目——添加——新建项——Web——Web 服务. 3.按 F5 启动调试,浏览器将显示接口 ...

  10. 简单的使用hibernate插入数据的例子

    数据库创建脚本: drop table person create table person( id          varchar(32)         not null primary key ...