首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
js面试题
Ccccccc
创建于2022-06-10
订阅专栏
js
暂无订阅
共17篇文章
创建于2022-06-10
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
浅拷贝,深拷贝
浅拷贝 浅拷贝就是对引用数据类型进行一层数据拷贝。 上述代码就是对引用对象的一层浅拷贝,我们通过打印可以发现当属性是引用数据类型的时候,我们在修改克隆的对象的hobbiles的时候,原对象的hobbi
es6的新特性
模板字符串 `` 箭头函数 (这个地方会问,和普通函数的区别) 默认参数 promise (特性,用法,手写) let/const (和var的区别) 对象解构 module classes 多行字符
事件捕获和事件冒泡
这个问题其实就是在考察addEventLisener的第三个参数问题。 element.addEventLisener(event,function,usecapture):第三个参数默认是false
闭包
指一个函数可以访问另一个函数中的变量。延长了变量的作用范围。 常见用法1:内部访问 常见用法2:外部访问
Promise的基本知识
promise是干什么的 proomise是解决异步编程的一种方式,也避免了回调地狱。 有三种状态pending,fulfilled,rejected。状态一旦发生改变就不会再次变化(从pending
Map和WeakMap的区别
我的例子写的不太好,没有办法直观的看到是否释放。 Map 使用过程中可能会造成内存泄漏。 WeakMap WeakMap的设计目的在于,键名是对象的弱引用(垃圾回收机制不将该引用考虑在内),所以其所对
快排/深拷贝/节流防抖
快速排序 手写深拷贝 更深入的可以看一下这篇文章https://juejin.cn/post/6844903929705136141 手写节流 (按一定频率执行) 手写防抖 (只执行一次)
答案
可以看一下这篇文章http://caibaojian.com/settimeout-pram3.html 20 20
js堆和栈的区别
JS变量都存放在[内存]中,而内存给变量开辟了两块区域,分别为栈区域和堆区域 栈会自动分配空间,会自动释放,容量小,速度快。 堆会自动分配空间,容量大,但是不会自动释放。 js一般将基本数据类型存放在
箭头函数和普通函数的区别
普通函数可以用来做构造函数,箭头函数不可以 this指向不同。普通函数的this指向该函数的调用者。箭头函数的this指向上层函数作用域的this对象,如果没有上层函数作用域,则指向顶部this(在浏
bind,call,apply的用法,区别,手写
三者的用法 三者都是用来改变函数/方法的this指向的(改变执行上下文) 区别 call和apply是调用就立即执行的,bind是复制一个新函数/方法,改变this指向后将其返回,返回的新函数/方法调
new操作符具体做了什么
上面就是正常的一个new的操作,现在开始进行分析 new操作符就做了什么 new操作首先以构造函数的原型对象为原型创建一个对象 将构造函数中的属性和方法添加到创建的对象身上(将构造函数内部的this指
数组filter,every,flat的作用
filter的作用 创建了一个新数组,新数组中是符合条件的所有元素 every的作用 查询数组中元素是否都满足要求,都满足则返回true,否则返回false some的作用 查询数组中是否有元素满足要
数据类型,判断方法,原型
数据类型 基本数据类型:String,Number,Boolean,Null,Undefined,Symbol 引用数据类型(对象类型):Object,Function,Array 特殊的(对象)类型
js如何实现动画效果
基本回答 setTimeout():使用定时器setTimeOut()来实现动画效果,使用clearTimeout()来清除定时器 setInterval():使用定时器setInterval()来实
手写快速排序
首先要理解快速排序的原理 简单写法 这种写法我在取基准值的时候,当基准值设置成arr[0]的时候遇到了一个爆栈的问题 高效写法 这种写法占用内存较少(这就写法就是快速排序的原理写的,只不过这个不是有i
let,const,var区别以及保持const不可修改
let,var区别 let存在块级作用域,var不存在。 var存在变量提升,let只有声明之后才能调用。 var可以重复声明,let不能,会报错。 let存在暂时性死区。 执行上下文环境中,var是