zoukankan      html  css  js  c++  java
  • JS 二

    • 常用 ES2015(简称:ES6)

    • let和const:

    1. let:定义变量
            * let和var的区别
            * 1.var可以重复定义,let不可以重复定义
            * 2. var有变量提升,let没有变量提升 (也可以叫预解析)
            * 3. var没有块级作用域,let有块级作用域
            */
    
    
    1. const :定义常量,即值不会改变的量

    特点:const 定义常量时必须赋值

    适用场景:引入一些npm包,或者定义项目中固定不变的值

    面试官会问:如何改变const定义的值???

    ** 可以通过给const定义一个对象,那对象中的属性是可以改变值的 **

       例如:
    
       const obj = {
            name: 'alice',
            age:20
         }
    
         obj.name='jack'
    
    • 箭头函数
        * 面试时:箭头函数与普通函数区别?
        * 1.语法区别
        * 2. this不同:普通函数this永远指向运行时调用的this,谁调用指向谁,
        * 但箭头函数没有自己this,指定父级有function的this,但如果父级没有function继续往上找,直接找到全局的window
        * 3. 是否有arguments:普通函数是有arguments,箭头函数没有
        * 4. 是否能实例化 ,普通函数可以实例化,箭头函数不行
    
    
    • 解构赋值:

      可以对相同结构的类型进行值的提取,通常对数组或对象处理

      //数组的解构 var arr = ['hello', 'vue.js']

       var [a, b] = arr;
      
      //对象的解构
      var obj = {
         name: 'alice',
         age: 20,
         address:'北京'
      }
      var { name, address } = obj(
      
    • 模板字符串:用反引号来定义字符串

      格式:${获取变量或表达式}

      注: JS中定义字符串有三种格式:"",'',``

      mdn文档:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/template_strings

    • set和map:

      set:可以理解成是不重复的数组

      add:添加一个值
      delete:删除一个值
      clear:删除所有值
      通过for of 来遍历set数据结构
      

      如何通过set可实现数组去重?

         var arr=[3,4,5,2,2,3,5,6,3,5,65,46,34,23,2]
    
           Array.from(new Set(arr))
    
           或[...new Set(arr)]
    

    set和数组的互转:

    1. 数组转换成set:new Set(数组)
    
    2. set转换成数组:Array.from(set类型的变量)
    

    set官文档:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Set

    map:可以理解成是一个对象

     注意:注意这里的map是一个构造函数,不是数组中的map
    
     优点:可以将将任意的数据类型的值当作对象的属性来使用,避免了传统的对象属性只有是字符串类型
    

    map官方mdn文档:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Map

    • 展开运算符或rest: ...

    ...有两个作用:

    1. 将数组转换成数据列表 (展开操作) [3,4,5]=>3,4,5
          例如:
    
          //实现合并两个数组  
        
          var arr1=[3,4,5]
        
          var arr2=[6,7,8]
    
          var result=[...arr1,...arr2]      4,5,6,7,8
    
    
    1. 将数据列表转换成数组(rest操作)
           4,5,6,7,8  => [ 4,5,6,7,8]
    
           function sum(...test) {
                var result=0;
    
                for(var i=0;i<test.length;i++) {
                result+=test[i]
                }  
    
                return result;  
          }
    
          sum(3,4,4,5,5)
    
  • 相关阅读:
    MVC之Ajax异步操作
    MVCHtmlHelper使用
    Xamarin.Forms初始
    .NET CORE2.0后台管理系统(一)配置API
    DDD领域驱动之干货(四)补充篇!
    基于官方驱动封装mongodb
    webApi签名验证
    在.Net下使用redis基于StackExchange.Redis
    DDD领域驱动之干货(三)完结篇!
    DDD领域驱动之干货(二)
  • 原文地址:https://www.cnblogs.com/akby/p/12871560.html
Copyright © 2011-2022 走看看