js高级--ES6知识点小计

在这里插入图片描述

在这里插入图片描述

2、call()、app 《大厂前端面试题解析+Web核心总结学习笔记+企业项目实战源码+最新高清讲解视频》无偿开源 徽信搜索公众号【编程进阶路】 ly()、bind()

call apply和bind都可以用来修改this指向。只是使用方式不一样

函数名.call(所要指向的对象,参数1,参数2,…) ;调用fn函数。修改this指向

在这里插入图片描述

函数名.call(所要指向的对象,[参数1,参数2,…]) ;调用fn函数,修改this指向

在这里插入图片描述

bind()不会直接调用函数 返回一个新的函数 修改了this指向

在这里插入图片描述

3、变量在内存中的储存

基本数据类型:在内存中以值的形式存在–>字符串、数值、布尔类型、null、undefined

复合数据类型:在内存中以地址的形式存在–> 对象

在这里插入图片描述

在这里插入图片描述

4、浅拷贝:直接把对象的属性一一赋值,不考虑属性值类型

如果属性值为对象的时候,只要修改一个,其余对象对应数据都会改变

在这里插入图片描述在这里插入图片描述

如何快速实现浅拷贝?–>遍历

在这里插入图片描述在这里插入图片描述

5、深拷贝:如果对象的属性值为基本数据类型,直接拷贝;

如果对象属性对应的值对象,需要解析对象,再去拷贝。

在这里插入图片描述

快速实现深层拷贝:

在这里插入图片描述

6、高阶函数

在这里插入图片描述

7、闭包

扩大变量作用域

在这里插入图片描述

缩小变量作用域,防止变量污染

在这里插入图片描述

8、闭包应用

在这里插入图片描述在这里插入图片描述

js有三部分组成:DOM+BOM+ECMAScript

es6 指的是ECMAScript扩展

https://es6.ruanyifeng.com/

9、let

let块级作用域:{就是代码块}

向上寻找距离该变量最近的开始的函数的作用范围,就是该{}之内。

在这里插入图片描述

let不能重复声明

在这里插入图片描述

let没有变量提升的概念

在这里插入图片描述在这里插入图片描述

暂时性死区:在一个代码块内,如果有某个变量,会绑定该区域,不再受外界的影响

let声明变量之前,不能使用它

在这里插入图片描述在这里插入图片描述

在这里插入图片描述在这里插入图片描述

在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值