javascript高级面试题(js高级面试题)

admin 197 0

老铁们,大家好,相信还有很多朋友对于javascript高级面试题和js高级面试题的相关问题不太懂,没关系,今天就由我来为大家分享分享javascript高级面试题以及js高级面试题的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

一、react面试题

Virtual DOM是一个轻量级的 JavaScript对象,它最初只是 real DOM的副本。它是一个节点树,它将元素、它们的属性和内容作为对象及其属性。 React的渲染函数从 React组件中创建一个节点树。然后它响应数据模型中的变化来更新该树,该变化是由用户或系统完成的各种动作引起的。

Virtual DOM工作过程有三个简单的步骤。

1、每当底层数据发生改变时,整个 UI都将在 Virtual DOM描述中重新渲染。

2、然后计算之前 DOM表示与新表示的之间的差异。

3、完成计算后,将只用实际更改的内容更新 real DOM。

浏览器只能处理 JavaScript对象,而不能读取常规 JavaScript对象中的 JSX。所以为了使浏览器能够读取 JSX,首先,需要用像 Babel这样的 JSX转换器将 JSX文件转换为 JavaScript对象,然后再将其传给浏览器。

每个React组件强制要求必须有一个 render()。它返回一个 React元素,是原生 DOM组件的表示。如果需要渲染多个 HTML元素,则必须将它们组合在一个封闭标记内,例如<form>、<group>、<div>等。此函数必须保持纯净,即必须每次调用时都返回相同的结果。

componentWillMount()–在渲染之前执行,在客户端和服务器端都会执行。

componentDidMount()–仅在第一次渲染后在客户端执行。

componentWillReceiveProps()–当从父类接收到 props并且在调用另一个渲染器之前调用。

shouldComponentUpdate()–根据特定条件返回 true或 false。如果你希望更新组件,请返回 true否则返回 false。默认情况下,它返回 false。

componentWillUpdate()–在 DOM中进行渲染之前调用。

componentDidUpdate()–在渲染发生后立即调用。

componentWillUnmount()–从 DOM卸载组件后调用。用于清理内存空间。

Refs是 React中引用的简写。它是一个有助于存储对特定的 React元素或组件的引用的属性,它将由组件渲染配置函数返回。用于对 render()返回的特定元素或组件的引用。当需要进行 DOM测量或向组件添加方法时,它们会派上用场。

React会创建一个虚拟 DOM(virtual DOM)。当一个组件中的状态改变时,React首先会通过"diffing"算法来标记虚拟 DOM中的改变,第二步是调节(reconciliation),会用 diff的结果来更新 DOM。

高阶组件是重用组件逻辑的高级方法,是一种源于 React的组件模式。 HOC是自定义组件,在它之内包含另一个组件。它们可以接受子组件提供的任何动态,但不会修改或复制其输入组件中的任何行为。你可以认为 HOC是“纯(Pure)”组件。

Redux使用“Store”将程序的整个状态存储在同一个地方。因此所有组件的状态都存储在 Store中,并且它们从 Store本身接收更新。单一状态树可以更容易地跟踪随时间的变化,并调试或检查程序。

因为 this.props和 this.state的更新可能是异步的,不能依赖它们的值去计算下一个 state。

二、WEB前端面试题

面试题:行内元素有哪些?块级元素有哪些?空(void)元素有那些?

面试题:页面导入样式时,使用link和@import有什么区别?

面试题:title与h1的区别、b与strong的区别、i与em的区别?

面试题:img标签的title和alt有什么区别?

面试题:png、jpg、gif这些图片格式解释一下,分别什么时候用?

面试题:CSS选择符有哪些?哪些属性可以继承?

面试题:CSS优先级算法如何计算?

面试题:一个盒子不给宽度和高度如何水平垂直居中?

面试题:display有哪些值?说明他们的作用。

面试题:对BFC规范(块级格式化上下文:block formatting context)的理解?

面试题:在网页中的应该使用奇数还是偶数的字体?为什么呢?

面试题:写一个左中右布局占满屏幕,其中左、右俩块固定宽200,中间自适应宽,要求先加载中间块,请写出结构及样式。

面试题:css sprite是什么,有什么优缺点

面试题:display: none;与visibility: hidden;的区别

面试题:position有哪些值?有什么作用?【特别多公司问】

面试题:line-height和height有什么区别?

面试题:延迟加载JS有哪些方式?

面试题:JS作用域+this指向+原型考题

面试题:JS判断变量是不是数组,你能写出哪些方法?

面试题:slice是干嘛的、splice是否会改变原数组

面试题:给字符串新增方法实现功能

面试题:找出字符串出现最多次数的字符以及次数

2.4真正移动端—— H5/C3面试题

面试题:::before和:after中双冒号和单冒号有什么区别?解释一下这2个伪元素的作用。

面试题:如何关闭iOS键盘首字母自动大写

面试题:怎么让Chrome支持小于12px的文字?

面试题:ios系统中元素被触摸时产生的半透明灰色遮罩怎么去掉

面试题:webkit表单输入框placeholder的颜色值能改变吗?

面试题:禁止ios长按时不触发系统的菜单,禁止ios&android长按时下载图片

面试题:禁止ios和android用户选中文字

面试题:说一下call、apply、bind区别

面试题:localstorage、sessionstorage、cookie的区别

面试题:箭头函数和普通函数有什么区别?

面试题:find和filter的区别【大厂】

面试题:some和every的区别【大厂】

4.1区分初中高级的—— Vue面试题

面试题:Vue2.x生命周期有哪些?

2.当一旦进入到某个组件会执行哪些生命周期

4.如果使用keep-alive会多俩个生命周期

5.如果加入keep-alive第一次进入组件会执行哪些生命周期

6.如果加入keep-alive第二次或者第N进入该组件会执行哪些生命周期

面试题:谈谈你对keep-alive的了解

面试题:Vuex是单向数据流还是双向数据流?

面试题:props和data优先级谁高?

面试题:computed、methods、watch有什么区别?

面试题:Vue项目打包后出现空白页

三、阿里巴巴资深java工程师什么水平

你好,如阿里百度腾讯等互联网大厂的工程师,资深(架构师水平)工程师是非常有实力的。

阿里巴巴集团采用双序列职业发展体系:

一套体系是专家路线【P序列=技术岗】,程序员、工程师,某一个专业领域的人才,一共分为14级,从P1到P14,目前校招最低从P4开始。

一套体系是M路线,即管理者路线【M序列=管理岗】,从M1到M10。

一般来说,应届毕业生刚入职到阿里为P5,工作1-3年之后升职到P6,阿里一般到P7才给配股票。

目前阿里需求量最大的职级范围分布在P6-P8,这也是阿里集团占比最大的级别。P6级别的程序员title是高级工程师,P7便已经是专家级别,P8则是高级专家。一般而言,小有名气的阿里程序员至少也是P8级别。P10级别的存在就是传说中的大神级别,这个级别的程序员无一不是业界鼎鼎有名的人物,比如褚霸、毕玄等等。

阿里薪资结构:一般是12+1+3=16薪。

年底的奖金为0-6个月薪资,90%人可拿到3个。

股票是工作满2年才能拿,第一次拿50%,4年能全部拿完。

关于阿里股票,主要是阿里用来奖励员工忠诚度的,所以阿里分年限行权,想要离职套现真的是很难,更不要提高额税收了。

阿里的工程师一般工作几年后就要考虑转P(技术)系列还是M(管理)系列了。

P虽然是专家系列但是到了一定级别也会带人,比如P9的整个业务都会由他带。M相对P来说比较难升,很多P做了5-10年缺少升M的资历。

和腾讯一样,阿里也是一年有两次晋升机会,其中7、8月是比较核心层级的晋升,如P7、P8、P9,年底则是较低级别的。

考核因素是上一年的绩效分数+直属领导的打分+晋升委员会打分,这里的委员会一般由直属领导+合作方的高管+懂业务的HRG组成。HRG:HR多面手,base在业务下面,在阿里话语权比别的互联网HR高。

晋升标准:绩效满足3.75、主管提名、技术答辩通过。

P8架构师作为阿里「IT架构灵魂人物」的角色,他们不仅做着架构师的本职工作,还同时做程序开发,写核心代码的工作。另外,架构师依旧是技术高手,编程能力依然是一流的。

但根据当前的市场需求,互联网大厂们对于普通Java开发人才需求逐年锐减,而对互联网架构师人才的需求招聘量已经上升到50%,因此薪资更是不可同日而语。

对于想学习互联网架构师的同学来说,北大青鸟、课工场等优秀品牌都是不错的选择。课程根据招聘需求制定,包含全部分布式微服务技术,对标阿里P8级别架构师。

好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!