es6相关语法

最近在学习es6,下面是学习过程中总结的一些语法。

1.编程范式

分类一:命令式编程:给计算机指令,第一步需要做什么、第二步需要做什么、第三步需要做什么

           声明式编程:拿到数据,把数据保存到每个位置,在对应的位置进行声明,之后会自动遍历

分类二:面向对象编程(第一公民:对象)

              函数式编程(第一公民:函数)

2.const 和 let 关键字

变量作用域:变量在什么范围内是可用
块级作用域:{ } 花括号内的作用域就叫块级作用域,可以用闭包来产生块级作用域
函数作用域:函数定义中{ }就叫函数作用域,其中关键字var声明的变量就在函数作用域中
let 关键字:   定义的变量是存在于块级作用域中,不会出现变量污染
const 关键字 : 特点:可定义常量,有块级作用域,不会出现变量污染
                          建议: 在开发中优先使用 const ,只有需要改变某一个标识符的时候才使用 let
                          注意 const 定义的是 常量 不可修改
                                       const 修饰的标识符 必须赋值
                           常量:可以改变对象内的属性值,但是不能通过直接赋值的方式改变对象的地址

 3.对象字面量的增强写法

字面量:根据一个东西就能直接知道这个东西代表了什么
              { }能直接知道代表的是对象
               [ ] 能直接知道代表的是数组
对象字面量增强写法: 本质:增强写法本质就是在合适的情况进行适当的简写操作
                                     属性 增强写法:用法:在对象中的属性名和属性值相同则可简写为只写一                                                                            个属性名即可
                                                             例子:const obj = {name,age}
                                     函数 增强写法:用法:(区别声明函数的时候)   
                                                                     简写前格式:函数名:function ( ) { }
                                                                                           例子:eat:function( ) { }
                                                                      简写后格式:函数名( ) { }
                                                                                            例子:eat( ) { }

4.JavaScript高级函数

filter函数 作用:进行 筛选过滤 ,类似 判断 过程
                    filter中的回调函数要求:必须返回boolean值
                                                          n代表回调函数中传入的参数名字,可根据自己的需要自行修                                                            改为其他参数名字
                                                          true:将回调的n加入到新数组
                                                          false:过滤这次的n
                   例子:const nums = [ 10, 20, 111, 222, 666, 40, 50 ]
                              let newNums = nums.filter( function( n ) {
                                  return n < 100
                              } )
                              console.log( newNums) // 输出结果:10, 20,40, 50
map函数:作用:对 数组内所有 的数据进行某一次的 统一变化
                  例子: let num1 = [ 10, 20, 30, 40, 50 ]
                             let numA = num1.map( function ( n ) {
                                 return n * 2
                              } )
                             console.log( numA )// 输出结果:20, 40, 60, 80, 100
reduce函数:作用:对 数组 中所有的内容进行 汇总
                      例子: let numA = [ 20, 40, 60, 80, 100 ]
                                 let total = numA.reduce( function ( preValue, n ) {
                                      return preValue + n
                                 }, 0 )
                                 console.log( total )// 输出结果:300

5.箭头函数

参数问题:一个参数:当只有一个参数的时候,参数列表的小括号可以省略,相当于简写

                                   例子:cosnt power = num => { return num * num}

                 两个参数:原生写法,参数不止一个时,无法省略小括号,无简写

                                   例子:const sum = ( num1, num2) => {return num1 + num2}

箭头函数this 的指向问题: 箭头函数中的this引用的就是 最近作用域中的this
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值