zoukankan      html  css  js  c++  java
  • 《编写可维护的javascript》读书笔记(上)

    最近在读《编写可维护的javascript》这本书,为了加深记忆,简单做个笔记,同时也让没有读过的同学有一个大概的了解。

    一、编程风格

      程序是写给人读的,所以一个团队的编程风格要保持一致。

      1、缩进:一种是利用制表符缩进,一种是使用空格符缩进,各有利弊,任选一种,保持一致即可。个人比较喜欢制表符缩进。

      2、语句结尾需要加上分号,避免没必要的BUG。

      3、命名:首先要语义化,使用驼峰式命名法,小驼峰即首字母小写,之后每个单词首字母大写;大驼峰即首字母大写,之后同小驼峰;变量名前缀应该是名词(myName),函数名前缀应该是动词(getName),常量全部使用大写字母(MY_NAME),非常直观,构造函数使用大驼峰命名法(DateFormat)。

      4、注释:单行注释用//,多行注释用/**/,单行注释//之后总有一个空格,下一行代码缩进层级应与注释保持一致。难以理解或是容易被认为是错误的代码前应该加上注释。

      5、花括号对齐方式推荐这种:  

    if(  ){
    
    }else{
        
    }

      不推荐这种:

    if(  )
    {
    
    }
    else
    {
        
    }

      6、避免使用with语句。

      7、for in 语句是用来遍历对象的属性值的,遍历数组请使用for循环

      8、在函数顶部定义变量,变量前一定要写上var语句,定义多个变量可以用逗号隔开,如:

    var name = "wangmeijian",
        age = 23,
        sex = "boy";

      同时,字符串统一使用双引号。

      9、判断两个值是否相等时,使用===或!==,不推荐使用==和!=,因为javascript具有强制类型转换机制会造成意想不到的结果。

      10、javascript中,eval()不是唯一可以执行javascript字符串的函数,使用Function构造函数也可以做到,setTimeout()和setInterval()也可以。例如:

    var wmj=new Function( "alert('Hi')" )
    wmj()
    
    setTimeout( "document.body.style.background='red'",100 );
    
    setInterval( "document.write('It is now"+ (new Date()) +"')",1000 ) //书上这个例子有错误,本文已更正

      这三种用法都比较少见。

      11、原始包装类型:先看一段代码

    var name = "wangmeijian";
    console.log( name.toUpperCase() );

      一个字符串是没有方法的,但你仍然可以使用toUpperCase()之类方法,这是因为在这条语句背后javascript引擎创建了String类型的新实例,紧跟着就被销毁了。String就是该字符串的原始包装类型。  

  • 相关阅读:
    安装Docker-Compose
    Docker微容器Alpine Linux
    Linux 常用命令
    如何定制博客园的个人空间
    Elasticsearch入门之从零开始安装ik分词器
    Elasticsearch入门实践
    写在2017年的总结
    开源ETL工具之Kettle介绍
    常用Java数据库连接池
    细说shiro之七:缓存
  • 原文地址:https://www.cnblogs.com/wangmeijian/p/4082597.html
Copyright © 2011-2022 走看看