ES6的8种基本属性

目录
1.ES6介绍

2.变量

3.类和对象的改进

4.函数相关

5.数组相关

6.字符串相关

7.新的数据类型

8.proxy 代理

9.Generator

10.promise

11.async

12.Iterator和for-of循环

课程内容
1.ES6介绍

q.什么是ES6
	ES6是ECMA Script 6.0的简称, 就是语言最新的标准, 发布与15年左右
	目标让js语言成为能支持去编写大型复杂的应用语言, 成为企业级开发语言

q.javascript和ECMA Script区别?
javascript, Java特别火,导致名字一直是javascript

ECMA组织制定js标准,不想用java, 叫ECMA Script 6.0

java是有商标的,有些情况不好用

2.变量

q.变量有什么新特性?
	可以使用let去定义变量
	可以使用const去定义常量
	解构赋值

q.let作用?

var定义变量在函数外是全局作用域 [OK]

var定义变量在函数里面,是函数内作用,
	从定时开始到函数结束都能用
	有效区域: 定义开始,到函数结束

let能定义块级作用于的变量
	有效区域: 定义开始,到定义块结束

q.const如何使用?
const PI = 3.14;

特性: 改了之后会报错

q.解构赋值如何使用?
赋值的一种形式
以前赋值 a=10
解构赋值,最简单理解等号左边多个值,等号右边也可以有多个值
注意: 对应的结构

3.类和对象的改进

q.对类和对象有什么改进
	提供了关键字 class 定义类
	提供了关键字 extends 继承一个类
		super()执行父类的初始化函数
	提供了对象字面量, 定义一个函数

q.class的用法

格式:

class 类名{
	
	//自动调用初始化函数
	constructor(name){
		
		//添加的属性
		this.name = name
	}
	
	say(){
		
	}
	
}

q.extends继承的用法

格式:
class 子类类名 extends 父类{
	
	constructor(name,score){
		
		super(name)
		this.score = score
	}
	
	show(){
		
	}
}

4.函数相关

q.es6在函数这块有哪些改进或者新特性?
	默认参数
	箭头函数
	rest函数(可变参数的函数)

q.默认参数是什么怎么用
function hello(x=10,y=20)

q.箭头函数
格式
(参数1,参数2,…) => {

	}
	
注意1: 如果参数只有一个,可以省略()
	如果没有参数, 必须加上 ()
	
注意2: {}中只有一个renturn语句,省略{}和return

注意3: 箭头函数好处1: 简化回调函数
		好处2中this指向定义的时作用域

q.rest参数
作用: 定义变参的函数

语法: function fun(a,b, ...list)

5.数组相关

q.数组新的特性有哪些?
	扩展运算符 ...
	for-of遍历	直接获取数组的值
	Array.from()  对象转数组(有要求)
	Array.of
	Array.prototype.copyWithIn()
	Array.prototype.find()

q. …用法

q. for-of
格式: for(var v of arr){}

q.Array.from()如何使用?
对象转数组
有要求,
1.对象有length
2.有对应的序号

q.Array.of多个值转一个数组
例子: var arr = Array.of(1,2,3,4,5)

q.Array.prototype.copyWithIn()
数组内数据复制

q.Array.prototype.find() 是查找数据
//根据你传入匿名函数中条件, 返回第一个查找的值

6.字符串相关

q.新特性有哪些?
	编码
for-of

字符串查找(常用)
	includes 是否包含
	startWith 前缀
	endWith 后缀
	
重复 repeat()

补位
	padStart()
	padEnd()
	
模板字符串

q. 编码
var c = “吉”
var c = “\uXXXX\uXXXX”
var c = “\u{xxx}”

q.for-of
for(var c of str){}

q.字符串查找(常用)
includes 是否包含
startWith 前缀
endWith 后缀

q.重复 repeat()

q.补位
padStart()
padEnd()

q.模板字符串

7.新的数据类型

q.es提供新的数据类型有哪些?
	Map映射, 存储多个键值对数据, 类似对象
	Set集合, 存储多个不重复的数据

q.Map的用法
创建Map: new Map()
存储值 map.set(key,value)
获取值 map.get(key)
遍历 for(var [k,v] of map)
删除值 map.delete(k)
清空 map.clear()

q.Set用法
创建Set: new Set()
添加值: set.add()
删除值: set.delete()
清空: set.clear()
遍历: for(var v in set.keys())

8.proxy 代理

q.proxy是什么
	一种监控对象的属性改变的一种机制

q.怎么用

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值