Felix的Nodejs代码风格

Felix的Nodejs代码风格

原文地址:http://nodeguide.com/style.html

这是翻译的关于nodejs编码风格的一片文章,nodejs并没有官方统一的编码风格,但是好的编码风格可以提高代码可读性,既然有人总结了,就可以参照一下。没有对原文进行全面的翻译,只是把该有的规则提取出来了。

1、Tab和空格

  用两个空格表示缩进,而不是使用Tab

2、分号

  虽然javascript可以不使用分号表示语句的结束,但是为了避免犯错,还是在一定要加上分号。

3、行宽限制

  将行宽限制在80个字符之内。

4、引号

  除非你在编写JSON,否则使用单引号

5、花括号

  将花括号放在语句的同一行上。

6、变量声明

  使用var 声明变量,每个变量后边添加分号,不要使用逗号连续声明变量。

7、变量和属性名

  使用小骆峰式命名法,避免使用单字符变量和缩写。

8、类名

  使用大骆峰式命名法

9、常量

  全部使用大写,多个单词可以下划线连接。

10、对象和数组的创建

  在尾部使用逗号。

11、判断相等操作

  使用三等号===而不是双等号==,双等号会自动转换,出现意想不到的问题。

12、扩展对象

  不要扩展任何对象的属性,尤其是原生对象,如果不遵守这条规则的话会出现意想不到的问题。

13、条件

  任何有意义的条件都应该有一个描述的变量,例如:

14、函数名长短

  函数名不要太长。

15、返回值

  避免深度潜入到if语句中,争取每一个函数都尽早有个返回值。

16、闭包名字

  给每个闭包添加一个命名。

17、内嵌闭包

  不要过多的内嵌闭包,否则会一团乱的。

18、回调函数

  由于nodejs都是非阻塞的IO操作,函数一般都是通过回调函数来返回他们的结果的。nodejs采用回调函数的第一个对象作为错误对象,自己写回调函数的使用也应该遵守这条规则。

19、getters和setters

  不要使用setters,因为它会造成更多的问题,getters可以任意使用



posted on 2012-12-04 22:25 NNS 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/hitandrew/archive/2012/12/04/2802160.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/461546.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c++远征之继承篇——继承的概念、继承时构造函数/析构函数的先后顺序

1、继承的概念 2、继承中,构造函数和析构函数的先后顺序

mysql操作常用技巧

删除一张表的数据,条件在另一张表 delete a from A a,B b where a.telb.tel and a.codeb.code and a.day201808;转载于:https://www.cnblogs.com/JAYIT/p/9720117.html

结对开发:电梯调度(2)

组员:赵天 李金吉 分工:赵天:概要设计与编码。 李金吉:详细设计与调试。 界面: 详细代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using Sys…

c++远征之继承篇——继承方式

以下内容源于慕课网,系学习整理而成,如有侵权,请告知删除。 1、公有继承 2、保护继承 3、私有继承

VMware vCenter Server6.5安装及群集配置介绍

借助 VMware vCenterServer,可从单个控制台统一管理数据中心的所有主机和虚拟机,该控制台聚合了集群、主机和虚拟机的性能监控功能。 VMware vCenterServer 使管理员能够从一个位置深入了解虚拟基础架构的集群、主机、虚拟机、存储、客户操作系统和其他关…

[JS性能优化专篇]

为什么80%的码农都做不了架构师?>>> 参考文章:了解 JavaScript 应用程序中的内存泄漏 旧版本的IE和Firefox都存在内存泄漏的问题,而且会一直持续到浏览器关闭。现在可以使用 Google Chrome 中的 Heap Profiler 来诊断内存问题。 …

jQuery --- grep

返回值:ArrayjQuery.grep(array, callback, [invert]) 概述 使用过滤函数过滤数组元素。 此函数至少传递两个参数:待过滤数组和过滤函数。过滤函数必须返回 true 以保留元素或 false 以删除元素。 参数 array,callback,[invert]Array,Function,BooleanV1.0 array:待…

Simulated Annealing(模拟退火算法)

/* Simulated Annealing(模拟退火算法) 求解旅行商问题(TSP) 网上给的数据是31个省会的坐标&#xff0c;蚁群算法得到的结果是&#xff1a;15378 我算的结果中&#xff0c;最好的一次是&#xff1a;15495 */ #include<iostream> #include<cstdio> #include<cstd…

c++远征之继承篇——隐藏,isa,虚析构函数

一、隐藏 父子关系。成员&#xff08;数据成员或者成员函数&#xff09;同名&#xff1b;此时子类中会隐藏父类中的同名成员。无法函数重载&#xff0c;只会隐藏&#xff01;如果想访问父类中的同名成员&#xff0c;需要 :: 操作。 访问父类同名函数的方法 二、is-a &#xff…

表单元素对齐问题解决方案

之前一直困扰自己的一个问题就是表单内radio、select等的对齐问题&#xff0c;一直以来&#xff0c;都是给提示添加label&#xff0c;然后跟radio等一起浮动&#xff0c;然后再设置margin解决的&#xff0c;但是这样又得另外解决IE6下的双边距问题&#xff0c;搞得自己相当恼。…

centos7配置Docker镜像加速器

创建并编辑文件 [rootlocalhost ~]# cd /etc/docker/ [rootlocalhost docker]# [rootlocalhost docker]# ls key.json [rootlocalhost docker]# # vi daemon.json [rootlocalhost docker]# pwd /etc/docker [rootlocalhost docker]# [rootlocalhost docker]# cat daemon.json {…

岳阳楼记

庆历四年春&#xff0c;滕子京谪守巴陵郡。越明年&#xff0c;政通人和&#xff0c;百废具兴&#xff0c;乃重修岳阳楼&#xff0c;增其旧制&#xff0c;刻唐贤今人诗赋于其上&#xff0c;属&#xff08;音&#xff1a;嘱&#xff09;予作文以记之。 予观夫巴陵胜状&#xff0c…

(转)动态Entity Framework查询:Dynamic Query 介绍

原文地址&#xff1a;http://www.cnblogs.com/yinzixin/archive/2012/11/30/entity-framework-dynamic-query.html Dynamic Query是一个支持动态Entity Framework查询的库。它的设计初衷是为了减少在管理系统中大量出现的对一个数据集进行查找、排序、分页的这类场景的开发工作…

docker配置容器运行jar包

拉取jdk镜像文件 # docker pull huanwei/alpine-oraclejdk8 创建文件夹编写Dockerfile文件 # mkdir docker # vi Dockerfile FROM docker.io/huanwei/alpine-oraclejdk8 MAINTAINER djl "djlcnbisoft.com" ENV REGISTRY_SERVER_USERNAME test ENV REGISTRY_SERVER_PA…

c++远征之继承篇——多重继承,多继承,虚继承,多继承时的重复定义解决方法

以下内容源于慕课网的学习整理&#xff0c;如有侵权&#xff0c;请告知删除。 1、多重继承 &#xff08;1&#xff09;概念理解 2、多继承 &#xff08;1&#xff09;概念理解 3、虚继承 &#xff08;1&#xff09;问题的引出&#xff1a;多重继承和多继承的结合&#xff0c…

从Pycharm说起

说实话.作为一个Coder.每天在各种IDE中切换编写Code.如果一个IDE Look and Feel总是无形中影响你每天Code Farm的心情.那该是多么不爽的事情.特别是针对本人对IDE总是有一种天生“洁癖感”.每当一们语言或技术在无意中吸引我.或是已经在粗糙的本文编辑器初体验.都会在两到三天体…

JAVA开发工具下载

一、eclipse下载 下载地址&#xff1a;http://www.eclipse.org/downloads/packages/ 点击下载 弹出下载框 压缩包解压后就可以使用 转载于:https://www.cnblogs.com/djlsunshine/p/11373287.html

c++远征之多态篇——虚函数及其实现原理

以下内容源于慕课网的学习整理&#xff0c;如有侵权&#xff0c;请告知删除。 1、多态的定义 简单理解&#xff0c;就是对于同一条命令&#xff0c;不同对象会做出不同的操作。相同对象收到不同消息&#xff0c;或者不同对象收到相同消息时&#xff0c;产生不同的动作。 2、多态…

开发过程中版本控制

宏观角度看软件版本控制版本控制的核心是这样一个简单的概念&#xff0c;即对一个或者多个文件的追踪过程&#xff0c;随着这些文件演变成一个或多个产品的过程。特别是版本控制追踪什么变化&#xff0c;是什么改变了它&#xff0c;为什么会这样。版本控制系统提供了一个有益的…

WPF窗体最小化到任务栏

WPF程序也可以很轻松的实现类似QQ那样最小化到任务栏的功能。 WindowState ws;WindowState wsl;NotifyIcon notifyIcon;#region Constructionspublic MainWindow(){InitializeComponent();//显示托盘。icon();//保证窗体显示在上方。wsl WindowState;}#endregionprivate void …