ES6 基础用法实例

ES6 语法

1、let 使用

在JavaScript中,var 定义的变量经常会出现作用域超范围的问题。

es6 中使用let的方式定义局部变量,在作用域内起效,超出则报错;

2 、const

在定义常量的过程中,如果修改常量,则报错。这里要注意常量的使用场景

3、 解构表达式

操作数据更加便利:取出数组中的前两个数据,并赋值给新的变量

之前:

let arr = [1,2,3,5];
let x =arr[0],y=arr[1];

之后:

let arr = [1,2,3,5];
let [x,y]=arr; // 取第一个 和第二个
let [,,a,b] =arr;// 取后面两个

通过对比我们很方便的看到其中的区别;

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    
</head>
<body>
    <script>
        for (let i = 0; i < 5; i++) {
           
            console.log(i);
        }
        // console.log(i);
        // index.html:15 Uncaught ReferenceError: i is not defined

       const c =10;
      // console.log(c++);  
      //Uncaught TypeError: Assignment to constant variable.
           
         let  arr = [1,3,2,4,6]  ;
         let [x,y]=arr; // 取第一个和第二个
         let [,,a,b]=arr; // 取后面两个

         let [,...test] =arr;// 除了第一个不要之外,其他的数据都放到新数组test中

          let user = {name:"zhangsan",age:20,cost:"2000"};
          let {name,age,cost} =user;// 解构表达式很好用,
        //   let {cc,bb}= user;// 这种方式是错误的,在对象中,没有索引,所以这样的调用是错误的

         let user1 ={name:"lisi",age:22,gf:{name:"wangwu",age:18}};
          let {gf:{name:cc}}=user1;//操作复杂的对象,很方便,解析起来更顺手。(变量在使用过程中,注意作用域,千万别冲突了。)
          let {...abc} =user1;
          abc==user1; // 这里是做的对象的深拷贝,两个对象不相等。并不是浅拷贝,改变对象的引用

    </script>
    
</body>
</html>



4 、open in brow 插件

vs 运行 html 到浏览器插件

注意:最好将google 浏览器,设置成默认浏览器,通过插件使用其他浏览器,并不能打开,估计360 搞的鬼。

5、html 插件

HTML Snippets 可以很方便的编写html 代码提示

6、中文插件

Chinese (Simplified) Language Pack for Visual Studio Code 中文插件,vscode 显示中文;

7 函数优化



<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        function sum(a,b){
            return a +b ;
        }

       const add =(a,b) => a + b ;


       const user = {
           name:'zhangsna',
           age:20,
           eat:function(){
               console.log("我非常能吃饭!!");
           }
       };
//     es6 函数优化
       const user1 = {
           name:'zhangsna',
           age:20,
           eat(){
               console.log("我非常能吃饭!!es6 新语法");
           }
       };

     user.eat();
     user1.eat();
// 传统方式

     const say =function(u){
         console.log(u.name,u.age);
     }
     say(user);
    //  es6 优化后
    const say1=({name,age}) => console.log(name,age);
    say1(user);

     


    </script>
</body>
</html>


8 map 和reduce

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
      let arr =["10","20","130","710","-10","-910"];

    //  逐项进行处理
     let arr2 =arr.map(a => parseInt(a) );

    // reduce 结果为-50
    let sum =arr2.reduce((a,b)=>a+ b);
    // sum3 结果为150
    let sum3 =arr2.reduce((a,b)=>a+ b,200);
    //   设置初始a为0 ,结果为0
    let sum2= arr2.reduce((a,b)=>a*b,0);

    </script>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值