今年出现频率较高的前端面试题及答案——js篇,屌丝逆袭必备

工作难找,前端工程师工作更难找,大家好,我是左耳东,下面开始梳理一下js面试出现频率高的知识,希望对同行伙伴有帮助,有备无患,未雨绸缪!关注我每日更新前端知识

今年出现频率较高的前端面试题及答案——js篇,屌丝逆袭必备

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

(1)创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型。

(2)属性和方法被加入到 this 引用的对象中。

(3)新创建的对象由 this 所引用,并且最后隐式的返回 this

//

var obj = {};

obj.__proto__ = Base.prototype;

Base.call(obj);

2、同步和异步的区别?

同步的概念应该是来自于操作系统中关于同步的概念:不同进程为协同完成某项工作而在先后次序上调整(通过阻塞,唤醒等方式)。

同步强调的是顺序性,谁先谁后;异步则不存在这种顺序性。

同步:浏览器访问服务器请求,用户看得到页面刷新,重新发请求,等请求完,页面刷新,新内容出现,用户看到新内容,进行下一步操作。

异步:浏览器访问服务器请求,用户正常操作,浏览器后端进行请求。等请求完,页面不刷新,新内容也会出现,用户看到新内容。

3、DOM 操作——怎样添加、移除、移动、复制、创建和查找节点?

(1)创建新节点

createDocumentFragment() //创建一个DOM片段

createElement() //创建一个具体的元素

createTextNode() //创建一个文本节点

(2)添加、移除、替换、插入

appendChild()

removeChild()

replaceChild()

insertBefore() //在已有的子节点前插入一个新的子节点

(3)查找

getElementsByTagName() //通过标签名称

getElementsByName() //通过元素的Name属性的值(IE容错能力较强,会得到一个数组,其中包括id等于name值的)

getElementById() //通过元素Id,唯一性

4、什么是mvc 和MVVM

今年出现频率较高的前端面试题及答案——js篇,屌丝逆袭必备

MVC

MVC

模型(Model):数据保存

视图(View):用户界面

控制器(Controller):业务逻辑

(1)View 传送指令到 Controller

(2)Controller 完成业务逻辑后,要求 Model 改变状态

(3)Model 将新的数据发送到 View ,用户得到反馈所有通信都是单向的。

今年出现频率较高的前端面试题及答案——js篇,屌丝逆袭必备

MVVM

MVVM

模型(Model)

视图(View

视图模型(ViewModel)

(1)各部分间都是双向通信

(2)View 与 Model 不发生联系,都通过 ViewModel 传递

(3)View 非常薄,不部署任何业务逻辑,称为“被动视图”(Passive View),即没有任何主动性;而 ViewModel 非常厚,所有逻辑都部署在那里。

采用双向绑定(data-binding):View 的变动,自动反映在 ViewModel ,反之亦然。

今年出现频率较高的前端面试题及答案——js篇,屌丝逆袭必备

养养眼


分享到:


相關文章: