欢迎光临散文网 会员登陆 & 注册

js 相关面试题 (更新中)

2022-11-23 22:41 作者:doubleyong  | 我要投稿



基础题

数据类型的分类? 原型类型与引用类型分别有哪些?

==和===区别

let 与 const 的区别

let 与 var 的区别

数组去重有什么方式

数组对象有哪些原生方法,列举一下

什么是伪数组(类数组)和真正的数组有什么区别

什么是事件对象,你知道的事件对象中都有什么东西。

事件委托的原理,和实现方式,为什么用事件委托

documen.write和 innerHTML的区别

null,undefined的区别?

什么是window对象? 什么是document对象?

javascript 代码中的"use strict";是什么意思 ? 使用它区别是什么?

什么叫做作用域,作用域链

局部变量和全局变量有什么区别。

形参与实参的关系

new操作符具体干了什么呢?

谈谈this的理解

什么是闭包(closure),为什么要用它?

js中深拷贝与浅拷贝的区别?实现深拷贝的方法有哪些?

js添加事件的方法有哪些?

关于事件,IE与火狐的事件机制有什么区别? 如何阻止冒泡?
IE为事件冒泡,Firefox同时支持事件捕获和事件冒泡。但并非所有浏览器都支持事件捕获。jQuery中使用event.stopPropagation()方法可阻止冒泡;(旧IE的方法 ev.cancelBubble = true;)

attribute与property的区别?
attribute是dom元素在文档中作为html标签拥有的属性
property是dom元素在js中作为对象拥有的属性。
所以,对于html的标准属性来说,attribute和property是同步的,是会自动更新的。但对于自定义属性,他们不同步。

DOM操作
(1)创建新节点
createDocumentFragment() //创建一个DOM片段
createElement() //创建一个具体的元素
createTextNode() //创建一个文本节点
(2)添加、移除、替换、插入
appendChild()
removeChild()
replaceChild()
insertBefore() //在已有的子节点前插入一个新的子节点
(3)查找
getElementsByTagName() //通过标签名称
getElementsByName() //通过元素的Name属性的值(IE容错能力较强,会得到一个数组,其中包括id等于name值的)
getElementById() //通过元素Id,唯一性

参考:https://zhuanlan.zhihu.com/p/148098455


高频面试题

  • JS延迟加载的方式有哪些?

  • ["1", "2", "3"].map(parseInt) 答案是多少?

  • new实现原理

  • promise实现原理,Promise如何在同一个promise里发起多个请求?

  • Promise async await

  • 算法: 选择排序和快速排序

  • 回显:一个列表需要请求数据,同时需要初始化怎么做

  • js是单线程、浏览器怎么处理的

  • Eventloop,宏任务微任务,那些是宏任务那些是微任务,执行顺序

  • 防抖和节流是什么?节流防抖应用场景,详细讲解一下代码实现

  • 重绘,重排,回流的区别?

  • 重排重绘的区别,性能消耗大的是谁?怎么解决?

  • 类数组,数组与类数组的转换

  • es6 generate函数 ,yelid关键字,迭代器的使用,.Proxy 对象

  • Object.create, Object.definePropery, Object.assign,Object.is等方法

  • 数组方法 reduce() , flat() / filter() , map() , forEach()

  • 数组方法 Array.from() 与 Array.of()

  • 数组方法 at() , copyWithin(), entries(), every(), fill(),  find, include, some

  • 函数柯西化, 手写

  • 函数方法, Function.prototype.call , Function.prototype.apply , Function.prototype.bind三者的区别

  • this 的理解

  • 闭包的理解

  • 执行上下文

  • 原型,原型链

  • 深拷贝和浅拷贝的区别,分别有哪些方式可以实现深拷贝浅拷贝


浏览器与网络相关面试题

  • 浏览器渲染机制

  • 浏览器有哪些线程

  • 浏览器的运行机制

  • 浏览器的缓存机制,强缓存和协商缓存

  • url实现原理

  • UDP TCP区别

  • 三次握手,四次挥手

  • http是什么?无状态协议是什么?怎么理解

  • HTTP请求报文

  • http和https的区别?自己有申请过https的流程吗?

  • http的方式有哪些?分别代表什么?

  • http 1.0 http1.1 http2.0的区别,如何开启2.0

  • socket , 轮询,长轮询的理解



js 相关面试题 (更新中)的评论 (共 条)

分享到微博请遵守国家法律