Python 27 ES6常用语法

1、变量定义

(1)let

在ES5中,通过var定义的变量,会在一加载js文件时就声明变量,到那一行时给变量赋值,这样在var之前打印这个变量就是undefined,不会报错,称之为变量提升。

在ES6中提供了新的变量定义方式let,通过let定义的变量不会出现这种情况,会直接报错。

另外,var只有全局作用域和函数作用域,let还有块级作用域。var可以重复定义,let不能重复定义。

总结区别:变量提升、块级作用域、重复定义

(2)const

const有let的所有特点:没有变量提升、有块级作用域、不能重复定义,同时是一个常量,不能修改,且定义的时候必须赋值

2、模板字符串

用反引号进行字符串的拼接,用${ }来存储变量。

let username = "yin";

let odiv = document.getElementById("odiv");
odiv.innerHTML = `
        <h1>hello ${username}</h1>
        <h2>hello you</h2>
`

3、数据的解构赋值

// 将数组中的值分别赋值给abc
let ary = [1, 2, 3];
let [a, b, c] = ary;

// 将对象中的值分别赋值
let obj = {
    username: "yin",
    age: 21
};
let {username, age} = obj;  // 实际上相当于:{username: username, age: age}

4、函数的扩展

(1)箭头函数

箭头函数的this指的是定义时的作用域

// 一个参数
let func = x => x;
func(10);

// 多个参数
let func = (x, y) => {return x+y};
func(1, 2);

(2)单体函数

https://www.cnblogs.com/yanze/p/7645347.html

单体函数就是省略了function:的函数

单体函数的this指的是调用它的对象。

5、类

类必须定义construct构造方法,通过new来实例化

class Person {
    constructor(name, age, account=1000){
        this.name = name;
        this.age = age;
        this.account = account;
    }
    showInfo(){
        console.log(this.name);
    }  
}
let wang = new Person("wang", 22);
wang.showInfo();

继承必须写上super( )

class Son {
    constructor(name, age){
        super();
        this.name = name;
        this.age = age;
    }
}
let he = new Son("he", 21);
Son.showInfo();

转载于:https://www.cnblogs.com/yinwenjie/p/11280534.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值