es6学习笔记(自己理解手写版 持续更新)

本文是一篇关于ES6学习的笔记,详细介绍了let与var的区别、const、解构赋值、模板字符串、箭头函数、Symbol等核心特性,并探讨了迭代器、生成器、Map与Set的使用,以及Class、对象、继承和模块化的概念。同时,涵盖了函数定义、严格模式、高阶函数和闭包等内容,还涉及到正则表达式和数值拓展。最后,提到了异步编程中的async与await,并预告了对Proxy和Reflect的学习。
摘要由CSDN通过智能技术生成

es6学习目录

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

let与var

let与var的区别:let为块级作用域,var为全局作用域,一般在用for循环时会使用块级作用域,以防止污染。

var arr = []
        for (var i = 0; i < 2; i++) {
   
            arr[i] = function() {
   
                console.log(i)
            }
        }
        arr[0](); //这里输出2
        arr[1](); //这里输出2
var arr = []
        for (let i = 0; i < 2; i++) {
   
            arr[i] = function() {
   
                console.log(i)
            }
        }
        arr[0](); //这里输出0
        arr[1](); //这里输出1

const

const也为块级作用域

解构赋值

解构赋值:在定义类中时,解构赋值的名字一定要与类名一致。

const team = [1, 2, 3, 4];
    const [x, xx, xxx, xxxx] = team
    console.log(x)//1
    console.log(xx)//2

展开运算符,可以将多余的参数存为数组

let xx = [1, 2, 3, 4]
let yy = [2, 3, 4, 5]
let zz = [...xx, ...yy] //(8) [1, 2, 3, 4, 2, 3, 4, 5]

模板字符串

模板字符串:``反引号,拼接字符串可以直接加${},括号里面写内容

	var str1 = "name"
    let str = `abcacb${
     str1}`
    console.log(str) //abcacbname

箭头函数

箭头函数声明特点:如果使用call方法调用,箭头函数将会继续静态指向第一次声明的值。不能用来实例化对象和使用arguments对象(只有function可以用来实例化对象与使用arguments对象)。使用场景:addEventListener

Symbol

es6的数据类型有:Number,String,Boolean,Object,null,undefined和Symbol。
Symbol作为属性名的三种用法:

let sy=Symbol("kk")

let syyy={
   }
syyy[sy]="kkk"
console.log(syyy) //{Symbol(kk):"kkk"}

let syyy={
   
    [sy]:"kk2"
}
console.log(syyy) //{Symbol(kk):"kk2"}

let syyy={
   }
Object.defineProperty(syyy,sy,{
   value:'kk3'}) //第一个为集合名,第二个为symbol类型,第三个为你要将此symbol赋什么值
console.log
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值