web前端js中ES6的规范写法

更新日期: 2018-07-30阅读: 3k标签: 规范

1、引号的使用,单引号' ' 优先(如果不是引号嵌套,不要使用双引号) 

正常情况:console.log('hello there') ,双引号转码: $("<div class='box'>")

 

2、空格的使用问题:(关键字后  符号后 排版 函数 赋值符号= )等

a 函数的括号:function hello  (name)  {}    看 (参数)的 "括号外左右"(  ) 是有空格的,"括号内name左右" 是没有空格的
b 关键字后需要空格:if  (condition) { ... }  if和()之间需要有空格
c 赋值符号 = 两边需要有空格 :var x  =  2  赋值符号 = 两边需要空格
d 字符串拼接符号 + 两边需要空格:var message = 'hello, '  +  name  +  '!' 常量和变量之间的+号,左右两边需要空格
e 逗号,前面不要留空格,后面留空格:var list = [1,  2,  3,  4]          function greet  (name,  options)  { ... } 逗号前面不留后面留空格
 

3、同行不同行的问题:

if () {}else{}中:  } else { 要在一行内
if (true) {
  // 
}  else   {
  //
}


4、不写没有使用过的变量,如果定义了一个变量,后来一直没有参与过运算,那么不应该定义这个变量。


5、用=== 代替 ==,比较相等的时候,因为 == 会多一步数据转换,但是当在 if (a!=undefiend) {}条件中, a!=undefiend同时有a!==undefiend和a!==null的双重意思(null == undefined)

 

6、习惯给window的属性和方法加上window,例外的几个不用加window:document ,console ,navigator。  如:window.alert('hi')

 

7、同一个连写方法很长要换行缩进问题,js中三元运算符,jq中的连缀等

var location = env.development ? 'localhost' : 'www.api.com'  一行内写法

连缀写法:
var leds = stage.selectAll('.led')
    .data(data)
  .enter().append('svg:svg')
    .class('led', true)
    .attr('width', (radius + margin) * 2)
  .append('svg:g')
    .attr('transform', 'translate(' + (radius + margin) + ',' + (radius + margin) + ')')
    .call(tron.led);


 8、注释问题:要有与前一行要空一行,另外不要无缘无故有大片的空白行// 后面空一格

var value  =  'hello world';空一行

//这里是注释   
console.log(value)

多行注释:(这也可以用到版权信息注释

/**
* make() returns a new element
* based on the passed in tag name
*
* @param <String> tag
* @return <Element> element
*/


9、开头问题:不要  (   [   `   开头, 在开头前要加上;号

;(function () {window.alert('ok')}())
;[1, 2, 3].forEach(bar)    
;`hello`.indexOf('o')
 

10、对象和数组的创建问题:var item = {}; 不用new Object()方式             数组:var arr = []

 

11、超过80个字的字符串连接问题:

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.';
循环 或者 多行字符串 用join方法来构建
function inbox(messages) {
  items = []; 
  for(i = 0; i < length; i++) {
       items[i] = messages[i].message;
  } 
  return'<ul><li>'+ items.join() + ;
}
 

12、对数字使用 parseInt 并且总是带上类型转换的基数.     var val = parseInt(inputValue, 10);

 

13,布尔值转换 用Boolean() 或者 !!        var  hasAge = Boolean(age);     var hasAge = !!age;

 

14、命名问题:

a 命名私有属性时前面加个下划线 _      如:构造函数中 this._firstName = 'Panda';     var _firstName = firstName; 
b jq变量命名加上个$,用来区分js变量


来源:https://www.cnblogs.com/faith3/p/6188261.html


链接: https://www.fly63.com/article/detial/959

web开发,前后分离接口规范

目前我们现在用的前后端分离模式属于第一阶段,下一阶段可以在前端工程化方面,对技术框架的选择、前端模块化重用方面,可多做考量。也就是要迎来“==前端为主的 MV* 时代==”。

js中箭头函数的编码规范,如何更好的使用箭头函数

当您必须使用匿名函数,请使用箭头函数表示法,它创建了一个在 this 上下文中执行的函数的版本,这通常是你想要的,而且这样的写法更为简洁。如果你有一个相当复杂的函数,你或许可以把逻辑部分转移到一个声明函数上。

用standard来管理JavaScript 代码规范

standard是一个开源的JS代码规范库,制定了所谓standard(标准)的JS代码规范,配合编辑器插件可以实时检查代码规范以及语法错误,通过执行命令检查代码规范以及语法错误,自动修复(可以直接修复的)不合规范的代码,使其符合规范

Web 前端开发代码规范(基础)

对于一个多人团队来说,制定一个统一的规范是必要的,因为个性化的东西无法产生良好的聚合效果,规范化可以提高编码工作效率,使代码保持统一的风格,以便于代码整合和后期维护。

Node.js的模块加载机制(CommonJS规范)

为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式。在Node环境中,一个.js文件就称之为一个模块(module)

编码规范_html代码规范化编写

嵌套的节点应该缩进;在属性上,使用双引号,不要使用单引号;属性名全小写,用中划线做分隔符;不要在自动闭合标签结尾处使用斜线(HTML5 规范 指出他们是可选的);不要忽略可选的关闭标签;

CommonJS 规范中的 module、module.exports 区别

CommonJS规范规定,每个模块内部,module变量代表当前模块。这个变量是一个对象,它的exports属性(即module.exports)是对外的接口。加载某个模块,其实是加载该模块的module.exports属性。module.exports属性表示当前模块对外输出的接口

W3C 代码标准规范

W3C通过设立领域(Domains)和标准计划(Activities)来组织W3C的标准活动,围绕每个标准计划,会设立相关的W3C工作组织(包括工作组、社区组、商务组等)。W3C会根据产业界的标准需求调整Domains和Activity的设置及相关的工作组设置。

css3代码书写规范

不要使用 @import 与 <link> 标签相比,@import 指令要慢很多,不光增加了额外的请求次数,还会导致不可预料的问题。CSS有些属性是可以缩写的,比如padding,margin,font等等,这样精简代码同时又能提高用户的阅读体验。

常用的JavaScript编程风格

工作中好的编程风格会更友好,不好的编程风格会让队友难受,变量的声明:使用let和const代替var(var存在变量提升等副作用),声明常量使用const

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!