zoukankan      html  css  js  c++  java
  • Es6开发中常用属性

    1.块级作用域变量letconst

    2.使用反引号(``)不怕字符串中出现的引号;不怕换行,反引号包起来的字符串可以随便换行;使用${}将变量或表达式包起来直接放在字符串中,不用写很多+

    3.遍历字符串   使用for...of代替for循环

    4.includes(),startsWidth(),endsWidth()

      不用使用indexOf()判断字符串中是否包含某个值了,使用includes()

      var string = 'string'
      string.includes('i', 0)   // true

      includes第二个参数表示查找的起始索引。
      还可以使用startsWidth()endsWidth()判断字符串是否以某些字符开始或结尾。

    5.扩展运算符...获取其余参数

      以使用...加上变量名保存其他参数全部数量。
      当只知道函数的前几个具体参数,不确定之后会有多少个参数传入时,可以使用...把其他传入的参数保存到一个数组中

    function print(value1, value2, ...values){
        console.log(values.join('--'))
    }
    print(1, 2, '参数3')        // 参数3
    print(1, 2, '参数3', '参数4', '参数5')    // print(1, 2, '参数3', '参数4', '参数5')

    6.箭头函数

      代码更加简洁-》静态绑定this箭头函数中,this指向的是定义箭头函数的对象中的this

       与普通函数的区别:

          1.箭头函数是匿名函数,不能作为构造函数,不能使用New,箭头函数没有prototype(原型)

          2.箭头函数不绑定arguments,取而代之的是reset参数...解决

          3.箭头函数不绑定this,会捕获其上下文的this,作为自己的this

          4.箭头函数在用apply()或者call()调用一个函数时,只传入了一个参数,对this没影响,任何方法都改变不了其指向,如 call() ,  bind() ,  apply() 

          5.箭头函数不能当做Generator函数,不能使用yield关键字

    7.数组

       1. 使用Array.from()把类数组对象转为数组

         一般来说,含有length属性的对象就可以当作类数组对象。平时获取多个DOM对象后,不能使用数组中的很多方法。我们可以使用Array.from方便的转换为数组

    var divs = Array.from(document.querySelectorAll('div'))
    divs.forEach((value, index) => {})

       2. 和字符串的includes方法一样,看数组中是否有给定值

    8.对象

       1. 使用Object.assign()合并多个对象  

       2. Object.keys(): 属性名组成的数组-》Object.values(): 属性值组成的数组-》Object.entries["key", "value"]组成的数组。

    var john = {
        name: 'John',
        age: 12
    }
    Object.keys(john) //  ["name", "age"]
    Object.values(john) //  ["John", 12]
    Object.entries(john) // [["name", "John"], ["age", 12]]

    9...运算符

       1. 读取的时候就是把数组或者对象给扩展开来

    var a = [...[1,2,3], 4]   // 把数组的每一项都展出来
    a  // [1, 2, 3, 4]
    var obj = {
        name: 'John',
        age: 12
    }
    var newObj  = {...obj, job: 'teacher'}        // 把某个属性展出来
    newObj // {name: "John", age: 12, job: "teacher"}

       2. 用作赋值的时候,是用作解构赋值,含义就是把等号右边表达式的剩余属性或数组项都放到...后面的变量里。

     var a, b
     [a, ...b] = [1, 3, 5]
      a   // 1
      b   // [3, 5]
     
     var c, d
     { name, ...d} = {name: 'John', age: 12, job: 'teacher'}
     name    // "John"  是一个属性的值
     d       //{ c, ...restD } = {name: 'John', age: 12, job: 'teacher'} 是一个对象
  • 相关阅读:
    CentOS/RedHat安装Python3
    Hash校验工具、MD5 SHA1 SHA256命令行工具
    centos如何安装Python3
    iOS之UI--涂鸦画板实例
    iOS之UI--Quartz2D的入门应用-- 重绘下载圆形进度条
    Eclipse导入项目: No projects are found to import
    在MAC平台下使用Eclipse出现了中文乱码
    C语言错误之--初始值(低级错误)
    iOS开发之duplicate symbols for architecture x86_64错误
    C语言的传值与传址调用
  • 原文地址:https://www.cnblogs.com/yxkNotes/p/13936646.html
Copyright © 2011-2022 走看看