文档介绍:JAVASCRIPT开发规范一、JavaScript语言规范JavaScript是一种客户端脚本语言,,局部有所修改         注:http://google-styleguide./svn/trunk/ :当你没有写var,变量就会暴露在全局上下文中,,如果没有加上,很难明确该变量的作用域是什么,变量也很可能像在局部作用域中,很轻易地泄漏到Document或者Window中,:NAMES_LIKE_THIS,即使用大写字符,***@:(1)对于基本类型的常量,只需转换命名./***Thenumberofsecondsinaminute.****@type{number}*/=60;(2)对于非基本类型,使用***@const标记./***Thenumberofsecondsineachofthegivenunits.****@type{Object.<number>}****@const*/={minute:60,hour:60*60,day:60*60*24}这标记告诉编译器它是常量. 至于关键词const,因为IE不能识别,,,漏掉分号会很危险://=function(){return42;}//Nosemicolonhere. (function(){//Someinitializationcodewrappedinafunctiontocreateascopeforlocals.})(); varx={'i':1,'j':2}//Nosemicolonhere. //.//Iknowyou'dneverwritecodelikethis,butthrowmeabone.[normalVersion,ffVersion][isIE]();  varTHINGS_TO_EAT=[apples,oysters,sprayOnCheese]//Nosemicolonhere. //-1==resultOfOperation()||die();  这段代码会发生些什么诡异事呢?报JavaScript错误-例子1上的语句会解释成,一个函数带一匿名函数作为参数而被调用,返回42后,又一次被"调用",,你很可能会在运行时遇到'nosuchpropertyinundefined'错误,原因是代码试图这样x[ffVersion][isIE]()()返回非NaN时,就会调用die,?JavaScript的语句以分号作为结束符,,均是在语句中声明了函数/对象/数组直接量,但闭括号('}'或']'),只有当语句后的下一个符号是后缀或括号运算符时,,,比如,减少重复代码,隐藏帮助函数,,,不要写成:   if(x){      functionfoo(){}   }虽然很多JS引擎都支持块内声明函数,但它不属于ECMAScript规范(见ECMA-262,第13和14条).各个浏览器糟糕的实现相互不兼容,,建议使用函数表达式来初始化变量:   if(x){   varfoo=function(){}   },