首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
JS
你的彭于晏
创建于2022-02-22
订阅专栏
JS基础知识
等 1 人订阅
共58篇文章
创建于2022-02-22
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
什么时候不能使用箭头函数?
箭头函数的缺点 题目 什么时候不能使用箭头函数? 箭头函数的缺点 没有 arguments 无法通过 call apply bind 等改变 this 简写的函数会变得难以阅读 不适用箭头函数的场景
节流和防抖
节流和防抖 题目 节流和防抖有何区别?分别用于什么场景? 防抖 防抖,即防止抖动。抖动着就先不管它,等啥时候静止了,再做操作。 例如,一个搜索输入框,等输入停止之后,自动执行搜索。 节流 节流,即节省
递归和尾递归
由于递归是调用函数自身,而函数调用需要消耗时间和空间:每次调用都要在内存栈中分配空间以存储参数、临时变量、返回地址等,往栈中压入和弹出数据都需要消耗时间。这势必导致执行效率大打折扣。 尾递归是一种可以
JS 继承
(1)第一种是以原型链的方式来实现继承,但是这种实现方式存在的缺点是,在包含有引用类型的数据时,会被所有的实例对象所共享,容易造成修改的混乱。还有就是在创建子类型的时候不能向超类型传递参数。 (2)第
JS 手写 Promise
原理参考:Promise - JavaScript | MDN (mozilla.org) 一个 Promise 对象代表一个在这个 promise 被创建出来时不一定已知的值。它让您能够把异步操作最
Map 和 Set
Map 和 Set 有序和无序 Map 和 Object 的区别 Set 和数组的区别 有序和无序 有序:操作慢 无序:操作快,但无序 如何结合两者优点呢?--------二叉树、及其变种 Map 和
介绍 RAF `requestAnimationFrame`
介绍一下 RAF requestAnimationFrame 想要动画流畅,更新频率要60帧/s, 即 16.67ms 更新一次视图 setTimeout 要手动控制频率,而 RAF 浏览器会自动控制
手写深拷贝
手写深拷贝 JS基础知识:变量的类型和计算 注意: Object.assign 不是深拷贝!只拷贝了一层 以下为简易版 实现一个完整的深拷贝如下: typeof 运算符 识别所有值类型 识别函数 判断
数组去重
数组去重 传统方式,遍历元素,挨个比较,去重 使用Set 考虑计算效率 方式一: 方式二: 建议: 能使用Set就使用Set。 Set比较快,传统方式需要循环。兼容性和速度看需求。
获取当前页面的url 参数
获取当前页面的url 参数 传统方式:查找 ·location.search 新API, URLSearchParams 参考:URLSearchParams - Web API 接口参考 | MDN
new Object() 和 Object.create()的区别
前提:要先明白原型和原型链 JS基础知识:原型和原型链 {} 等同于 new Object(), 原型 Object.prototype Object.create(null) 没有原型, 必须传个参
查找,添加,删除,移动DOM节点的方法及总结
查找,添加,删除,移动DOM节点的方法 DOM操作总结 (。♥ᴗ♥。) 哇!!查找,添加,删除,移动DOM节点的方法 DOM操作总结 (。♥ᴗ♥。) 哇!!
解释 jsonp 的原理,为何它不是真正的ajax ?
同源策略和跨域 (ノ°▽°)ノ 冲鸭!征服她!!! 浏览器的同源策略(服务端没有同源策略)和跨域 后端如nginx, 我们一般称为转发,不称为跨域 哪些html 标签能绕过跨域? 加载图片 CSS J
事件代理(委托)是什么?
事件代理(委托)是什么? 利用事件冒泡的原理,让自己的所触发的事件,让他的父元素代替执行! js中事件冒泡我们知道,子元素身上的事件会冒泡到父元素身上。 事件代理就是,本来加在子元素身上的事件,加在了
[10,20,30].map(parseInt) 返回的结果是什么?
[10,20,30].map(parseInt) 返回的结果是什么? map 的参数和返回值 parseInt 参数和返回值 拆解后等同于如下: parseInt 函数返回的是十进制结果 第二个参数的
数组 slice 和 splice 区别
数组 slice 和 splice 区别 功能区别 (slice - 切片,splice - 剪接) 参数和返回值 是否是纯函数 slice 纯函数 splice 非纯函数
数组的 pop push unshift shift 分别做什么
pop push unshift shift 对数组头部或尾部添加或删除数据 纯函数:不对外界产生副作用的函数就叫纯函数! 哪些方法不改变原数组? concat map filter slice 就是
手写深度比较,模拟 lodash isEqual
参考:lodash.isEqual | Lodash 中文文档 | Lodash 中文网 (lodashjs.com) 比较对象的键值对,都一样则为true,反之false; 若对象的属性值是引用类型