• 前端开发最佳实践-读书笔记


    前端开发最佳实践-读书笔记

    一,命名规范

    1.id/class 命名中全部使用小写 id用下划线_链接  class用中横线链接-  如果class名称仅仅作为js调用的钩子 可在名称中添加'js-'前缀,如:

    <div id="js_reader_menu>
        <div class='menu-top js-active'></div> 
    </div>    
    2.为避免class名称重复 可以父级class名作为前缀,如 .reader-content/.reader-content-body/header/footer
    3.多个选择器有相同样式时,每个独占一行。
    4.html/css中适量添加注释 注释代码和上面空一行。
    5.推荐给jQuery类型变量添加$前缀予以区分。
    6.定义字符串,外部用单引号包括‘’;参数合适部分加上空格( = ,参数,函数等),必要的逗号不可缺少
    7.html头部还应包含
    <meta name="keywords" content="html,web">
    <meta name="description" content="一个展示html页面的例子">

    8.clearfix 正确代码

    .clearfix{
      *zoom:1;  
    }
    .clearfix:before,
    .clearfix:after{
     display:table;   
       content:'' ;
    }
    .clearfix:after{
     clear:both;
    }

    9.script defer 并行加载,延迟执行 async 异步加载和执行

    10.提高js可维护性

      1.避免全局变量或者函数(对象属性/匿名函数)

    var currentAction = {
      length:0;
     init:function(){
    }  
    
    }
    var curremtAction = (function(){
    var legnth=0;
    function init(){
    }
    function test(){
    }
    return {init:init}
    })()
    currentAction.init()

    2.简写方法如对象、数组定义 使用=== !==  不用with、eval

    3.事件处理和业务逻辑分离 配置数据和代码逻辑分离 分离css(使用class等)和html 使用模板

    4.模块化开发

    var curremtAction = (function(){
    var legnth=0;
    function init(){
    }
    function test(){
    }
    return {init:init,test:test}
    })()
    currentAction.init()

    更好的模块化开发是引用某些框架如webpack require.js



  • 相关阅读:
    Delphi Try Except 实例
    如何有效地让一个“ParentFont = False”子控件使用与父母相同的字体名称?
    WPF的本质:数据和行为
    WPF-触发器
    WPF TextBox 验证输入
    wpf数据绑定更新通知
    asp.net *.ashx类型的文件使用说明
    asp.net 定时间点执行任务的简易解决办法
    asp.net 页面延时五秒,跳转到另外的页面
    Asp.net 基于Cookie简易的权限判断
  • 原文地址:https://www.cnblogs.com/patrickxy/p/6725355.html
Copyright © 2020-2023  润新知