首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
那些年一起追过的题
用户923004799204
创建于2023-06-13
订阅专栏
那些年一起追过的题
等 1 人订阅
共101篇文章
创建于2023-06-13
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
19.null和undefined的区别
> undefined:表示未定义,变量声明而没有赋值的时候,就会返回undefined > > null:表示空对象,一般用来赋值给可能会返回对象的变量,用来初始化
20.js实现继承的方式有哪些
构造函数绑定:使用call/apply方法,将父对象的构造函数绑定到子对象上 继承父类的实例对象 组合继承方式:前面两种方式的结合 寄生组合继承方式
21.谈谈对原型的理解
在js中,每一个函数对象都有一个prototype属性,这个属性指向函数的原型对象在js中,每一个函数对象都有一个prototype属性,这个属性指向函数的原型对象
22.简单描述原型链,解决了什么问题
每一个对象都有原型对象,同时原型对象也可能拥有原型对象,这样一层一层,最终指向null 这种关系被称为原型链 主要解决继承问题
23.prototype和__proto__的区别
> prototype是构造函数的属性 > > __proto__是每个实例的属性 > > 这两个指向的是同一个对象
24.说一下js的作用域和作用域链
有两种工作模型,词法作用域和动态作用域,js采用词法作用域 js作用域的种类:全局作用域、函数作用域和块级作用域
25.说一下js的this,怎样改变this的指向
this的指向基本遵循一句话:谁调用函数,函数的this就指向谁 全局函数 window 对象中函数的调用 该对象 setTimeout中的this window 事件绑定中的this 该节点 箭头函
26.call/apply/bind的区别
临时改变,且立即执行--call/apply a.call(this,参数1|参数2) 单独传入 a.apply(this,arr) 传入数组 永久改变this,需手动调用--bind (传值方式同a
27.new的原理是什么
创建一个新的实例化对象 将对象与构造函数通过原型链链接起来 将构造函数中的this绑定到新对象上来 根据构造函数返回类型做判断,如果是原始值就忽略,如果是对象,就需要正常处理
28.说一下js的执行上下文和执行上下文栈
分为:全局执行上下文和函数执行上下文 执行上下文创建: 1、创建变量对象 2、创建作用域链 3、确定this的值
29.浏览器事件代理机制的原理和好处
事件流分为三个阶段:捕获阶段(从上到下)——目标阶段——冒泡阶段(从下到上) 事件代理又加事件委托,是在祖先级DOM上绑定事件,当触发子孙级DOM上的事件时,利用事件冒泡原理来触发绑定在祖先级DOM上
30.什么是闭包,闭包的作用以及使用场景
闭包是有权访问另外一个函数中变量的函数 作用: 保护函数的私有变量不受外部的污染,封装私有变量 模仿块级作用域 函数柯里化,定时器 副作用:过度使用会导致内存泄露
31.防抖和节流的区别是什么,怎样实现,应用场景有哪些
都是为了防止函数多次调用 类型 区别 实现 应用场景 防抖 只会被调用一次 事件被触发N秒之后再执行回调,如果在n秒内事件再次被触发,就重新计时 按钮提交、文本输入验证 节流 每隔一定时间被调用一次
32.setTimeout倒计时为什么会出现误差
它实际上只是将回调添加到宏任务队列中,如果主线程还有任务没有执行完,必须等待 可以通过对下次任务的调用时间进行修正来减少误差
33.什么是函数柯里化
是把接受多个参数的函数变成接受一个单一参数的函数,并且返回接受余下参数以及返回结果的新函数的技术 function Sum(a){ return function(b){ return functio
34.typeof与instanceof的异同
都是用来检测数据类型的 typeOf 判断引用类型时,都会返回Object instanceOf 判断引用类型属于哪个构造函数,会将继承关系考虑进去
35.instanceof的实现原理是什么
是通过原型链判断的 A instanceof B 在A的原型链上层层查找,是否有原型等于B的prototype,如果一直找到原型链顶端,都没有找到,就放回false
36.说一下事件循环机制
整体的js代码执行的时候,会分为同步任务和异步任务 同步任务会进入主线程依次执行 异步任务会再分为宏任务和微任务 宏任务进入事件队列中,在里面注册回调函数,每当指定的事件完成时,就会把这个回调函数放入
37.说一下几种数组去重的方式
双重for循环 for循环+indexOf for循环+includes new Set reduce Map has/set
38.对象数组如何去重
根据对象的某一个具体属性来去重根据对象的某一个具体属性来去重根据对象的某一个具体属性来去重根据对象的某一个具体属性来去重
下一页