前端八股文

前言
一、javascript相关
        1.js的八个基本数据类型(高频)
        2.this的五种指向方式
        3.Function的call,apply和bind方法的区别?
        4.Promise,手写promise
        5.闭包
        6.原型链,作用域链与原型链的区别?
        7.继承与继承的五种实现方式
        8.深拷贝与浅拷贝的区别?(高频)
        9.事件委托
        10.var,const和let对比(高频)
        11.宏任务与微任务
        12.bind的实现方式
        13.eventloop,事件循环(超高频)
        14.new的过程,手动实现一个new方法
        15.0.1+0.2!=0.3的原因
        16.什么是防抖和节流?有什么区别?怎么实现
        17.“==”和“= = =”的区别?
        18.null和undefined的区别?
        19.内存泄露和内存溢出
        20.垃圾回收机制
        21.怎么判断数组array和对象

//方法一
console.log(arr.constructor)//[function:Array]
console.log(obj.constructor)//[function:Object]
//方法二
console.log(Array.isArray(arr))//true
console.log(Array.isArray(obj))//false
//方法三
console.log(arr instanceof Array)//true
console.log(obj instanceof Array)//false
//方法四
console.log(Object.prototype.toString.call(arr))//[object Array]
console.log(Object.prototype.toString.call(obj))//[object Object]
//方法五
console.log(arr.__proto__)//[]
console.log(obj.__proto__)//{}

        22.js的三个面向对象的属性
        23.堆和栈的区别?
二、浏览器
        1.回流和重绘 
        2.http缓存
        3.cookies,sessionStorage和localStorage
        4.跨域问题(超高频)
        5.在浏览器输入网址到页面渲染的整个过程(超高频)
三、css相关
        1.盒子模型(标准盒模型和怪异盒模型)
        2.垂直居中的方法   
        3.css样式优先级
        4.行元素和块级元素有哪些?
        5.几大经典布局方案(圣杯布局和双飞翼布局)
        6.css3新增属性
        7.如何使一个div消失在视野中?
        8.说明z-index的工作原理,适用范围?
四、HTML相关
        1.谈谈你对html5的理解以及新增的属性?
        2.标签语义化的理解
        3.dom是什么?关于dom的api有哪些
        4.w3c标准
        5.前端优化的一些方式
五、ES6相关
        1.es6新增特性   
        2.forEach,for in和for of三者的区别? 
        3.bable是什么?有什么作用?
        4.es6对数组做出的优化有哪些?
        5.es6对object对象做出的优化有哪些?
        6.es6对函数做出的优化有哪些?
        7.symbol是什么,有什么作用?
        8.literator是什么?有什么作用?
        9.set和map
        10.遍历的几种方法对比
        11.es6新增的函数列举
六、vue相关

       1.你对vue的理解(自己发挥)

        2.响应式原理
        3.8个生命周期
        4.组件通信的方法
        5.双向绑定的原理
        6.computed和watch的区别
        7.对虚拟节点的理解
        8.diff原理
        9.eslint
        10.vue常用的修饰符
        11.v-text、{{}}和v-html的区别
        12.vue的单页面的优缺点
        13.vuex是什么?怎么使用?在哪种场景使用?
        14.vue路由
        15.vue数据绑定的几种方式? 
        16.注册全局组件和局部组件
        17.viewui的常用组件(自己发挥)
        18.vue首屏加载慢的原因是什么?怎么解决?
        19.vue-router懒加载和非懒加载方式的区别?
        20.手动搭建一个vue项目,和使用vue-cli的区别?vue-cli给我们做了什么?
七、计算机网络
        1.http和https区别?https的工作原理和优缺点?
        2.tcp和udp概念区别?三次握手,四次挥手?为什么握手需要三次?
        3.常见的状态码?
        4.ur的组成以及同源策略
        5.强缓存以及协商缓存
        6.get和post的区别? 
        7.常见的http方法
        8.web安全问题
        9.域名解析的过程和原理
八、操作系统
        1.什么是死锁?死锁产生的条件
        2.什么是虚拟内存
        3.进程和线程的区别?
        4.并发和并行的区别?
九、手撕代码
        1.事件委托
        2.常见的排序算法,度量的标准
        3.数组去重
十、其他问题
        近期访问的比较好的博客有哪些,列举一下
        deadline怎么解决
        列举曾经遇到的困难(学习或者生活上)以及解决方式
        怎么学习的前端
        与别人相比的优势
        项目相关。项目里面你的角色,你做了什么?开发过程中遇到的困难,怎么解决的?
        准备怎么学习一个新的技术
        你的爱好
        你的职业规划
        怎么理解大前端
        为什么选择前端,说说你对前端的理解
        压力大怎么解决
        工作枯燥怎么解决)
        个人优缺点
        找工作看重哪些因素

总结:

引用别人说过的一句话:失败不可怕,胆怯才可怕,失败之后无所进益最可怕
       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

双子座超超

你的鼓励是我最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值