javascript: Javascript 风格向导


  大部分针对Javascript最合理的方法归纳。
类型
? 原始类型:我们可以直接使用值。
  ο  string
  ο  number
  ο  boolean
  ο  null
  ο  undefined
SearchIndex
var foo = 1,
bar = foo;
bar = 9;
console.log(foo, bar); // => 1, 9
SearchIndex
?   复合类型:我们通过`引用`对值进行间接访问。
  ο  object
  ο  array
  ο  function
SearchIndex
var foo = [1, 2],
bar = foo;
bar[0] = 9;
console.log(foo[0], bar[0]); // => 9, 9
SearchIndex
 
Objects
? 使用{}创建对象。
// bad
var item = new Object();
// good
var item = {};
? 不要使用保留字作为关键字。
SearchIndex
// bad
var superman = {
class: 'superhero',
default: { clark: 'kent' },
private: true
};
// good
var superman = {
klass: 'superhero',
defaults: { clark: 'kent' },
hidden: true
};
SearchIndex
Arrays
? 使用[]创建数组
// bad
var items = new Array();
// good
var items = [];
? 如果你不知道数组长度,使用Array#push。
SearchIndex
var someStack = [];
// bad
someStack[someStack.length] = 'abracadabra';
// good
someStack.push('abracadabra');
SearchIndex
  ? 当你需要复制数组的时候,请使用Array#slice。
SearchIndex
var len = items.length,
itemsCopy = [],
i;
// bad
for (i = 0; i < len; i++) {
itemsCopy[i] = items[i];
}
// good
itemsCopy = items.slice();
SearchIndex
Strings
? 对于字符串,我们使用单引号''。
SearchIndex
// bad
var name = "Bob Parr";
// good
var name = 'Bob Parr';
// bad
var fullName = "Bob " + this.lastName;
// good
var fullName = 'Bob ' + this.lastName;
SearchIndex
? 超过80个字符的字符串,我们使用串联符号(\),让字符串多行显示。
? 注意:如果过度使用带串联符号的字符可能会影响到性能。
 
SearchIndex
// bad
var errorMessage = 'This is a super long error that was thrown because of Batman. When you stop to think about how Batman had anything to do with this, you would get nowhere fast.';
// bad
var errorMessage = 'This is a super long error that \
was thrown because of Batman. \
When you stop to think about \
how Batman had anything to do \
with this, you would get nowhere \
fast.';
// good
var errorMessage = 'This is a super long error that ' +
'was thrown because of Batman.' +
'When you stop to think about ' +
'how Batman had anything to do ' +
'with this, you would get nowhere ' +
'fast.';
SearchIndex
  
? 当我们在编程的时候,需要拼接出一个字符串,我们可以使用Array#join 代替字符串连接。尤其是对IE浏览器。
SearchIndex
var items,
messages,
length, i;
messages = [{
state: 'success', 本文链接http://www.cxybl.com/html/wyzz/JavaScript_Ajax/20130709/39005.html

时间: 2025-01-21 08:57:44

javascript: Javascript 风格向导的相关文章

当前流行的JavaScript代码风格指南_javascript技巧

JavaScript 没有一个权威的编码风格指南,取而代之的是一些流行的编码风格: 复制代码 代码如下: Google的JavaScript风格指南(以下简称Google) http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml NPM编码风格(以下简称NPM) https://npmjs.org/doc/coding-style.html Felix的Node.js风格指南(以下简称Node.js) http:

JavaScript编码风格指南(中文版)_javascript技巧

前言: 程序语言的编码风格对于一个长期维护的软件非常重要,特别是在团队协作中.如果一个团队使用统一规范的编码分风格,可以提高团队的协作水平和工作效率.编程风格指南的核心是基本的格式化规则,这些规则决定了如何编写高水准的代码.本指南来自于<编写可维护的JavaScript>这本书,基于"Java语言编码规范"和Crockford的JavaScript编程规范,还有Nicbolas的一些个人经验和喜好.写作本文旨在加深自己印象,也为了更多人的了解到JS编码风格,提高自己的编码质

javascript: Javascript 风格向导(续)

序 我好长时间没有在推荐栏里出现了,看来上一篇反响不错,故再续上篇.Properties? 当访问属性的时候,我们使用点(.)操作符. var luke = {jedi: true,age: 28};// badvar isJedi = luke['jedi'];// goodvar isJedi = luke.jedi; ? 当以变量的方式访问属性的时候,用下标符号([]).--除非特殊需求,否则尽量避免使用obj[variable]的方式进行属性访问. var luke = {jedi: t

javascript: Javascript 风格向导(终结)

序 继续前两篇,这篇作为终结篇.Blocks? 有{}的代码,我们换行处理.// badif (test)return false;// goodif (test) return false;// goodif (test) {return false;}// badfunction() { return false; }// goodfunction() {return false;}Comments? 对于多行注释使用/**  ... */.包含描述信息.参数类型和返回值.// bad//

JavaScript代码风格要素

1920年,由威廉·斯特伦克(William Strunk jr .)撰写的<英语写作手册:风格的要素(The Elements of Style)>出版了,这本书列举了7条英文写作的准则,过了一个世纪,这些准则并没有过时.对于工程师来说,你可以在自己的编码风格中应用类似的建议来指导日常的编码,提高自己的编码水平. 需要注意的是,这些准则不是一成不变的法则.如果违背它们,能够让代码可读性更高,那么便没有问题,但请特别小心并时刻反思.这些准绳是经受住了时间考验的,有充分的理由说明:它们通常是正确

JavaScript编程风格指南

介绍 作者根据Robert C. Martin<代码整洁之道>总结了适用于JavaScript的软件工程原则<Clean Code JavaScript>. 本文是对其的翻译. 不必严格遵守本文的所有原则,有时少遵守一些效果可能会更好,具体应根据实际情况决定.这是根据<代码整洁之道>作者多年经验整理的代码优化建议,但也仅仅只是一份建议. 软件工程已经发展了50多年,至今仍在不断前进.现在,把这些原则当作试金石,尝试将他们作为团队代码质量考核的标准之一吧. 最后你需要知道

javascript:Javascript排名

<html><head><meta http-equiv= "Content-Type " content= "text/html; charset=utf-8 "><title> Javascript 排名 www.cxybl.com</title><style type="text/css"></style></head><body>&

[JavaScript]JavaScript高级之词法作用域和作用域链

主要内容: 分析JavaScript的词法作用域的含义 解析变量的作用域链 变量名提升时什么 一.关于块级作用域         说到JavaScript的变量作用域,与咱们平时使用的类C语言不同. 例如C#中下面代码: static void Main(string[] args) {         if(true)         {                 int num = 10;         }         System.Console.WriteLine(num);

如何学习javascript: javascript学习-LOCATION

location表示该窗口当前显示文档的URL:Location对象的toString()方法返回href属性的值,可以使用location代替location.hrefLocation的属性:href,protacol,host,hostname,port,pathname,search(分别表示URL的各个部分)载入新的文档:replace();(在历史中替换当前文档)assign();(在历史中新建文档)location = "url";(相对地址,绝对地址)location =