• ES6深入学习记录(三)编程风格


    今天学习阮一峰ES6编程风格,其中探讨了如何将ES6的新语法,运用到编码实践之中,与传统的JavaScript语法结合在一起,写出合理的、易于阅读和维护的代码。

    1.块级作用域


    (1)let 取代 var


      ES6 提出了两个新的声明变量的命令: letconst。其中,let 完全可以取代 var,因为两者语义相同,而且 let 没有副作用
      
      上面代码如果用 var 替代 let,实际上就声明了两个全局变量,这显然不是本意。变量应该只在其声明的代码块内有效,var 命令做不到这一点。

      var 命令存在变量提升效用,let 命令没有这个问题。
      
      上面代码如果使用var 替代 let,console.log那一行就不会报错,而是会输出undefined,因为变量声明提升到代码块的头部。这违反了变量先声明后使用的原则。

      所以,建议不再使用var命令,而是使用 let 命令取代

    (2)全局常量和线程安全


      在 let 和 const 之间,建议优先使用 const,尤其是在全局环境,不应该设置变量,只应设置常量

      const 优于 let 有几个原因。一个是 const 可以提醒阅读程序的人,这个变量不应该改变;另一个是 const 比较符合函数式编程思想,运算不改变值,只是新建值,而且这样也有利于将来的分布式运;最后一个原因是 JavaScript 编译器会对 const 进行优化,所以多使用const ,有利于提供程序的运行效率,也就是说 let 和 const 的本质区别,其实是编译器内部的处理不同。
      
      const 声明常量还有两个好处,一是阅读代码的人立刻会意识到不应该修改这个值,二是防止了无意间修改变量值所导致的错误。

      所有的函数都应该设置为常量。

      长远来看,JavaScript可能会有多线程的实现,这时 let 表示的变量,只应出现在单线程运行的代码中,不能是多线程共享的,这样有利于保证线程安全

    2.字符串


      静态字符串一律使用引号或印号,使用双引号。动态字符串使用反印号
      

    3.解构赋值


      使用数组成员对变量赋值时,优先使用解构赋值。
      


      函数的参数如果是对象的成员,优先使用解构赋值。

      


      如果函数返回多个值优先使用对象的解构赋值,而不是数组的解构赋值。这样便于以后添加返回值,以及更改返回值的顺序。

      

    总结:本文转载自阮一峰es6入门,个人学习使用,请勿转载!

  • 相关阅读:
    JS 百度地图路书---动态路线
    jQuery---创建和添加节点
    CSS基础
    第一篇:前端知识之HTML内容
    JS高级---为内置对象添加原型方法
    JS DOM属性+JS事件
    Vue-router
    vue使用kkfileview文件预览功能
    JS高级---案例:验证密码的强度
    promise是怎么来的?
  • 原文地址:https://www.cnblogs.com/tim100/p/6186409.html
Copyright © 2020-2023  润新知