zoukankan      html  css  js  c++  java
  • 编写可维护的JavaScript代码(部分)

    平时使用的时VS来进行代码的书写,VS会自动的将代码格式化,所有写了这么久的JS代码,也没有注意到这些点。看了《编写可维护的javascript代码》之后,做了些笔记。

            var result = parameter1 + parameter2 + parameter3 + parameter4 + parameter5
                        parameter6 + parameter7;
    当代码超过一行的时候应该给代码换行。换行的时候,第二行的代码应该增加两个缩进
            if (isTrue && isFalse
                    && isTrueOrFalse) {
                DoSth();
            }
    运算符之间应该有一个空格的间距
            为代码段落添加空行。
            1、在方法之间。
            2、在方法中的局部变量和第一条语句之间。
            3、在多行或单行注释之前。
                4、在方法内的逻辑片段之间插入空行。提高可读性。
    
            if (result.length > 0) {
                var data = eval(result);
                
                for (var i = 0; i <= data.length; i++) {
                    var name = data[i].name;
                    var age = data[i].age;
                    
                    if (name === 'vichin') {
                        DoSth();
                    }
                }
            }    
                错误的写法:
                var nums = new Array(1,2,3,4);
                正确的写法:
                var nums = [1,2,3,4];
    使用数组直接量
            function DoSth() {
                 var value = 10,
                     result = value,
                     name = "",
                      sex;
            }//合并var语句
    
            var flag = (i < count);//使用小括号来包裹后面的比较语句
    声明变量
            //推荐写法
            var value = condition ? value1 : value2;
            //不推荐的写法:
            condition ? doSth() : doSth1();  //这里没有赋值,推荐使用if else
    三目运算符的使用
            错误的写法:
                var book = new Object();
                book.title = "JS";
                book.page = 256;
            正确的写法:
                var book = {
                    title:"JS",
                    page:256
                };
    使用对象直接量

    什么时候不使用null?

            //不要使用null来检查是否传入了某个参数。
            function DoSth(arg1,arg2,arg3) {
                 if (arg3 != null) {
                     DoSth1();
                 }
            }
            //不要使用null来检测一个未初始化的变量。
            var person;
            if (person != null) {doSth();}

    什么时候使用null?
    1、用来初始化一个变量,这个变量可能赋值为一个对象的时候。
    2、用来和一个已经初始化的变量比较,这个变量可以是也可以不是一个对象。
    3、当函数的参数期望是对象的时候,用作参数传入。
    4、当函数的返回值期望是对象的时候,用作返回值传出。

    不要在html页面中为元素绑定事件
    <a href="" onclick="doSth()" id="btn" value="按钮"/>

    当要为页面元素添加样式的时候,尽量事先将样式写在css文件中,并使用

    element.className += "className";//原生的写法
    element.classList.add("className");//H5写法
    $(element).addClass("className");
    如果是要移动元素的位置,那么就只能在JS中修改!

    在比较变量时,使用===而不是使用==,===操作,不涉及到强制类型转换。

    对于eval函数,只允许在AJAX的回调函数中使用eval函数,其他地方不允许使用eval函数,除非是实在没有办法的情况下。

    尽量在变量名中体现出变量的数值类型,而不是使用匈牙利命名法(strName,iAge现已过时)。

    如果你是java或者是C#程序员,推荐在声明字符串的时候,使用双引号而非单引号。

    尽量不要操作dom,而使用服务器端的模板或者是前端的模板。

  • 相关阅读:
    Kubernetes 集成研发笔记
    Rust 1.44.0 发布
    Rust 1.43.0 发布
    PAT 甲级 1108 Finding Average (20分)
    PAT 甲级 1107 Social Clusters (30分)(并查集)
    PAT 甲级 1106 Lowest Price in Supply Chain (25分) (bfs)
    PAT 甲级 1105 Spiral Matrix (25分)(螺旋矩阵,简单模拟)
    PAT 甲级 1104 Sum of Number Segments (20分)(有坑,int *int 可能会溢出)
    java 多线程 26 : 线程池
    OpenCV_Python —— (4)形态学操作
  • 原文地址:https://www.cnblogs.com/vichin/p/10187884.html
Copyright © 2011-2022 走看看