首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
JavaScript
只爱碎花裙
创建于2021-12-23
订阅专栏
JavaScript学习
暂无订阅
共21篇文章
创建于2021-12-23
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
面试题-深拷贝(超高频)-包含各种对象类型
赋值:和原数据指向同一类型,改变会使原数据改变 浅拷贝:和原数据不指向同一对象,改变基本数据类型不会影响原数据,改变引用数据类型会影响原数据 深拷贝:和原对象不指向同一对象,改变任何数据类型都不会影响
JS-数组与字符串的转换
1.数组=>字符串 join('分隔符号'),将数组中的元素以该符号连接成字符串 toString(),将数组中的元素转换成字符串以逗号连接返回 toLocaleString(),与toString用
懒加载-IntersectionObserver
日常开发中,我们经常需要判断目标元素是否在视窗之内或者和视窗的距离小于一个值 offsetTop、scrollTop (需要不断监听滚动事件) getBoundingClientRect(需要不断监听
js-EventBus
```js class EventBus { constructor() { this._event = new Map() } // 订阅 on (type, fn) { let handler =
js-几种数组去重
```js let arr = [1,23,4,1,4,2,5] 1.set和[...] let newArr1 = [...new Set(arr)] 2.indexOf let newArr2 =
JS-模块化
什么是模块化 模块化开发的最终目的是将程序划分成一个个小的结构 这个结构中编写属于自己的逻辑代码,有自己的作用域,不会影响到其他的结构 这个结构可以将自己希望暴露的变量,函数,对象等导出给其结构使用
JS-DOM-BOM
BOM Window全局对象 Window窗口对象 Window常见属性,方法,事件 EventTarget Location对象常见属性 Location对象常见方法 History对象常见属性和方
JS-浅拷贝-深拷贝
浅拷贝 ①Object.assign() Object.assign() 方法可以把任意多个的源对象自身的可枚举属性拷贝给目标对象,然后返回目标对象。但是 Object.assign()进行的是浅拷贝
JS-数组去重
js // 数组去重 // 遍历法 function my_unquie(arr) { const newArr = [] // 使用for循环 for(let i = 0; i < arr.l
JS-继承
js中的继承从简单到完善 原型链继承 => 借用构造函数实现继承 =>组合继承 =>寄生式组合继承 => ES6class实现继承
JS-异常处理
错误处理方案 通过throw关键字,抛出一个异常 如果我们执行代码,就会报错,拿到错误信息就可以及时修正代码 throw throw语句用于抛出一个用户自定义的异常 在throw后面跟上一个表达式来表
JS-事件循环
进程和线程 线程和进程是操作系统中的两个概念 进程(process):计算机已经运行的程序,是操作系统管理程序的一种方式 线程(thread):操作系统能够运行运算调度的最小单位,通常被包含在进程中
JS-async-await
async function(异步函数) async关键字 async关键字用于声明一个异步函数 async(asynchronous) sync(synchronous) async函数的写法有很多
JS-Iterator-generator
Iterator(迭代器) 定义 是确保用户可在容器对象(container,如链表或数组)上遍访的对象,使用该接口无需关心对象的内部实现细节 其行为像数据库中的光标,迭代器最早出现在1974年设计的
JS-Promise
异步任务处理 通过回调函数,成功返回一个成功函数,失败返回一个失败函数 弊端: 自己封装的请求函数,需要设计好callback名称,使用很麻烦 使用别人封装的请求函数,需要阅读源码或文档,沟通成本较大
JS-Vue响应式原理
Vue2响应式原理 通过Object.defineProperty的方式实现对象属性的监听 Vue3响应式原理 通过Proxy的方式来监听数据的变化以及收集相关依赖
JS-Proxy-Reflect
监听对象-Object.defineProperty 案例 通过Object.defineProperty的存储属性描述符来对属性的操作进行监听 缺点 Object.defineProperty设计初
JS-ES7-ES12
Array Includes(ES7) ES7之前,使用indexOf()根据返回结果是否为小于0来判断一个数组中是否包含某个元素,不等于-1的话则包含 ES7,新增includes(),如果包含返回
JS-ES6
class(ES6) ES6(ECMAScript2015)新标准使用class定义类 类的本质是构造函数,原型链的语法糖 定义类的方法: 类声明:class Person {} 类表达式: var
深入JS面向对象
面向对象是现实的抽象方式 对象可以将多个关联的数据封装到一起,更好的描述一个事物 用对象来描述事物,有利于我们将现实的事物,抽离成代码中某个数据结构 JavaScript的面向对象 JS支持多种编程范
下一页