无论编写任何程序都会接触到编码风格,设计模式等概念,编码风格一般侧重于书写规范,而设计模式则偏向于程序架构设计。本文中笔者整理的这些“模式”包含了编写JavaScript代码时一些常用的方法或者小技巧,可以帮助初学JavaScript的同学迅速提升代码质量。当然,在此之前首先要保证规范的书写习惯,在此之上可以再将本文介绍的知识点运用到代码编写中,则可以大大提升代码质量。 下面是笔者整理的一些点,没有什么逻辑顺序,想到哪儿写到哪儿了,不足之处欢迎大家补充指正。 1. 变量定义 复制代码 代码如下: // 一般写法 var a = 0; var b = 1; var c = "xxx"; // 推荐写法 var a = 0, b = 1, c = "xxx";
2. 尽量使用字面量 复制代码 代码如下: // 一般写法 var obj = new Object(); obj.a = "aa"; obj.b = "bb"; obj.c = "cc"; var arr = new Array(); // 推荐写法 var obj = { a: "aa", b: "bb" }; var arr = []; function getXX(index){ return ["aa", "bb", "xx", 55, "xxb"](index); } function getMessage(code){ return { 404: "xxx", 500: "xxx" }[code]; }
3. 正则字面量 复制代码 代码如下: var regex = new RegExp("someting"); // 当正则表达式可能变化时才使用构造函数 var cls = "someclass", regex = new RegExp(cls + "\s*", "ig"); // only for dynamic regexs // 其他情况均使用字面量 var regex = /someting/ig;
7. 插入迭代值 复制代码 代码如下: // Insert iteration var name = value[i]; i++; // 直接将迭代值插入 var name = value[i++];
8. DOM操作 复制代码 代码如下: // DOM Operation el.style.display = "none"; // offline // operation el.style.display = "block"; // 使用文档碎片操作更好 var fragment = document.createDocumentFragment(); // better el.innerHTML = ""; // fast remove all children, but may leaks memory el.innerHTML = "xxx"; // ok, use it! // 小心处理NodeList var images = document.getElementsByTagName("img"); // be careful! dynamic list