es6高频

1. var let const

  1.var 有变量声明的提升, let,const没有    =>先上车后买票

  2.var 变量会重复声明, let const不可以   =>套牌车

  3.var没有块级作用域,  let const有 =>红杏出墙

  4.var不存在暂时性死区, let const存在

  5.const变量不能修改 (const声明之后必须赋值,否则报错)

2.两值互换

  let a = 1;let b = 2; 可以利用解构方式将a,b两值互换 [a, b] = [b, a]

3.数组去重

  let arr = [21,24,43,45, 53,12,21,24]

  let item = [...new Set(arr)];

4.es6 构造函数同步.then异步

    // 构造函数同步执行
    const promise = new Promise((resolve, reject) => {
      console.log(1);
      resolve();
      console.log(2);
    })
    // .then异步执行
    promise.then(() => {
      console.log(3);
    })
    console.log(4);//答案1243

 5.MVC与MVVM

M 模型 V视图 C 控制器control 

VM视图模型  data相当于再前端有了自己的控制器

MVC 缺点:1.前后端不能独立开发,需要等待接口做好

      2 .没有自己的数据中心,依赖于后台

6.v-model原理

数据双向绑定

     <input type="text" id="username"/>
     <p id="uName"></p>
     <script>
         let obj = {}
         Object.defineProperty(obj, 'username', {
            //  取值
            get: function() {
                console.log('取值');
            },
            set: function(val) {
                console.log('设置值');
                document.getElementById('uName').innerText = val;
            }
         })
         document.getElementById('username').addEventListener("keyup", function(){
             //event
             obj.username = event.target.value;
         })
     </script>

 v-if与v-show

v-if是真正的dom创建和删除dom,不满足 条件不会渲染dom 常用于 v-show是改变属性display的值实现显示和隐藏dom

posted @ 2022-03-22 21:35  HaoyuSun  阅读(29)  评论(0)    收藏  举报