求职指南网 > 笔试试题 >

前端基础笔试题及答案

时间: 淑娟 笔试试题

前端笔试考试其实不会很难,考的大多是基础知识,平常最重要的还是要多练习。今天小编整理了前端基础笔试题及答案大全供大家参考,一起来看看吧!

前端基础笔试题及答案

前端基础笔试题及答案

JS深入this

00001. 

下列哪种方法不能改变this指向

00002. 

A. eval

B.apply

C. bind

D.call

00001. 

在Java中下面选项关于this描述正确的是

00002. 

A.在使用new实例化对象时,this指向这个实例对象

B.将对象的方法赋值给变量A。执行A时该方法中的this指向这个对象。

C.在函数定义时,this指向全局变量

D.在浏览器下的全局范围内,this指向全局对象

00001. 

下面有关Java中call和apply方法的描述,错误的是?

00002. 

A.call与apply都属于Function.prototype的一个方法,所以每个 function实例都有call、apply属性

B.两者传递的参数不同,call函数第一个参数都是要传入给当前对象的对象,apply不是

C.apply传入的是一个参数数组,也就是将多个参数组合成为一个数组传入

D.call传入的则是直接的参数列表。call方法可将一个函数的对象上下文从初始的上下文改变为由thisObj指定的新对象。

答案

AAB

作用域(闭包)

00001. 

内存泄漏是java代码中必须尽量避免的,以下几段代码可能会引起内存泄漏的有

00002. 

//(1)

functiongetName{

name= 'java'

}

getName

//(2)

constelements={

button:document.getElementById( 'button')

};

functionremoveButton{

document.body.removeChild(elements.button);

}

removeButton

//(3)

lettimer=setInterval(=>{

constnode=document.querySelector( '#node')

if(node){

clearInterval(timer)

}

},1000);

A.(1)、(2)、(3)

B.(2)、(3)

C.(1)、(3)

D.(1)、(2)

00001. 

那个操作不会造成内存泄露

00002. 

A.没有清理的DOM元素引用

B.被遗忘的定时器

C.事件侦听没有移除

D.局部变量不用时,没有设为null

00001. 

下列关于闭包理解错误的是

00002. 

A.增加一定的内存消耗

B.使用不当可能会导致内存泄漏

C.可以使用闭包模拟私有方法

D.闭包会改动对象的原型链

答案

DDD

原型与继承

00001. 

Java实现继承的方式,不正确的是:

00002. 

A.原型链继承

B.构造函数继承

C.组合继承

D.关联继承

00001. 

所有对象都有原型

00002. 

A.T

B.F

00001. 

以下关于原型链的描述正确的是:

00002. 

A.通过原型链继承的属性和对象自己定义的属性等效

B.通过原型链可以模拟对象的私有属性

C.在对象上访问不存在的属性时,会依次遍历整条原型链

D.所有Java中的对象都是位于原型链顶端的`Object`的实例

答案

DBC

其他

00001. 

以下不属于前端数据存储方式的是?

00002. 

A.jsonp

B.cookie

C.localStorage

D.sessionStorage

答案

A

DOM题事件流

00001. 

将A元素拖拽并放置到B元素中,B元素需要做哪项操作?

00002. 

A.event.preventDefault

B.event.prevent

C.event.drag

D.event.drop

00001. 

以下不支持冒泡的鼠标事件为()?

00002. 

A.mouseover

B.click

C.mouseleave

D.mousemove

00001. 

在java中,用于阻止默认事件的默认操作的方法是

00002. 

A.stopDeafault

B.stopPropagation

C.preventDefault

D.preventDefaultEven

00001. 

事件传播的三个阶段是什么

00002. 

目标->捕获->冒泡

冒泡->目标->捕获

目标->冒泡->捕获

捕获->目标->冒泡

00001. 

下面有关java常见事件的触发情况,描述错误的是?

00002. 

A.onchange:用户改变域的内容

B.onkeypress:某个键盘的键被按下或按住

C.onmousedown:某个鼠标按键被按下

D.onblur:元素获得焦点

答案

ACCDD

DOM遍历

00001. 

下列哪项不属于DOM查找节点的属性?

00002. 

A.parentObj.firstChild

B.parentObj.children

C.neborNode.previousSibling

D.neborNode.siblings

00001. 

DOM中,给父节点添加子节点的正确方法为?

00002. 

A.(parentNode,newNode);

B.append(parentNode,newNode);

C.parentNode.append(newNode);

D.parentNode.(newNode);

00001. 

Java中document.getElementById返回值的类型为?

00002. 

A.Array

B.Object

C.String

D.Function

00001. 

DOM中,给父节点添加子节点的正确方法为?

00002. 

A.(parentNode,newNode);

B.append(parentNode,newNode);

C.parentNode.append(newNode);

D.parentNode.(newNode);

答案

DDBD

其他

00001. 

DOM元素的以下属性改变会导致重排(reflows)的是

00002. 

outline

visiblity

font-size

background-color

答案

C

BOM题

00001. 

setInterval(updateClock,60)的含义是()?

00002. 

A.每隔60秒调用一次updateClock

B.每隔60毫秒调用一次updateClock

C.每隔60分钟调用一次updateClock

D.每分钟调用60次updateClock

00001. 

使用方法()可以获取到地理位置所在的经纬度?

00002. 

A.Geolocation.watchPosition

B.Geolocation.getCurrentPosition

C.Geolocation.getPosition

D.Geolocation.Position

00001. 

setInterval("alert('welcome');",1000);这段代码的意思是

00002. 

A.等待1000秒后,再弹出一个对话框

B.等待1秒钟后弹出一个对话框

C.每隔一秒钟弹出一个对话框

D.语句报错,语法有问题

答案

BBC

ES6题箭头函数

00001. 

下列对js箭头函数描述错误的是

00002. 

A.箭头函数没有原型属性

B.箭头函数不绑定this,会捕获其所在的上下文的this值,作为自己的this值

C.箭头函数可以作为构造函数,使用new

D.箭头函数不绑定arguments,取而代之用rest参数解决

00001. 

关于箭头函数下列说法错误的一项是:

00002. 

A.函数体内this的指向是定义时所在的对象,而不是使用时所在的对象

B.箭头函数内不能使用arguments对象

C.箭头函数不能使用yield命令

D.可以使用new创建一个箭头函数的实例

答案

CD

promise

00001. 

关于将Promise.all和Promise.race传入空数组的两段代码的输出结果说法正确的是:

00002. 

Promise.all([]). then((res)=>{

console.log( 'all');

});

Promise.race([]). then((res)=>{

console.log( 'race');

});

A.all和race都会被输出

B.all和race都不会被输出

C.all会被输出,而race不会被输出

D.all不会被输出,race会被输出

00001. 

以下方案中,不是用于解决回调陷阱的的是:

00002. 

A.Promise

B.Generator

C.async

D.Proxy

00001. 

在ECMA6中,不属于promise的状态是:

00002. 

A.Pending

B.Pause

C.Fulfilled

D.Rejected

答案

CDB

解构赋值

00001. 

关于ES6解构表达式,描述正确的是

00002. 

let[a,b,c,d,e]= "hello";

A.e= "hello";

B.其它都为undefined

C.当中a= "h",b= "e";

D.语法报错

答案

C

多选题JS基础

00001. 

下面哪些数组方法会改变原数组

00002. 

A.push

B.concat

C.splice

D.map

00001. 

下面可以声明数字的js代码是

00002. 

A.consta=0xa1

B.consta=076

C.consta=0b21

D.consta=7e2

00001. 

以下属于操作符typeof的返回值的是:

00002. 

(1) function

(2)object

(3)null

(4)array

(5)NaN

(6)bigint

(7)regexp

(8)undefined

A.(1)、(2)、(3)、(4)、(5)、(6)、(7)、(8)

B.(1)、(2)、(3)、(8)

C.(1)、(2)、(8)

D.(1)、(2)、(6)、(8)

00001. 

以下结果等于字符串string

00002. 

A.typeof 'string'

B.String( 'string').toString

C. 'string'.split( '').sort.join( '')

D.( function(string){ returnstring})( 'string')

E.JSON.parse( '{"string":"string"}').string

00001. 

下面的等式成立的是?

00002. 

A.parseInt(46.8)`==`parseFloat(46.8)

B.NaN`!==`NaN

C.isNaN( 'abc')`==`NaN

D.typeofNaN`===` 'number'

00001. 

以下哪些选项可以将集合A转化为数组?

00002. 

A.Array.from(A)

B.[].slice.apply(A)

C.[...A]

D.[].map.call(A,o=>o)

00001. 

下列结果返回true的是

00002. 

A.null==undefined

B.null===undefined

C.null===null

D.NaN==null

E.NaN===NaN

F.Infinity+1!==Infinity

答案

ACABDDABDEBDABCDAC

JS深入

00001. 

关于以下代码,说法正确的有哪些?

00002. 

functionPerson{}varperson=newPerson;

A.每一个原型都有一个constructor属性指向关联的构造函数。

B.每一个对象都有一个prototype属性。

C.Object.getPrototypeOf(person)===Person.prototype

D.person.constructor===Person

00001. 

下列在JS时间循环机制中属于微任务(microTask)的是?

00002. 

A.process.nextTick

B.promise

C.setTimeout

D.setInterval

答案

ACDAB

ES6

00001. 

以下关于let和const的说法中正确的是:

00002. 

A. let声明的变量值和类型都可以改变

B.const声明的常量不可以改变

C.两者都不存在变量提升,同时存在暂时性死区,只能在声明的位置后面使用

D.const可以先声明再初始化,可以后赋值

web前端需要学哪些内容

web前端需要学HTML、CSS、JavaScript、jQuery、Ajax、前端框架(vue/React/Angular等)等前端知识;还要了解每个浏览器中的各个版本的兼容性、Web标准、移动设备、多终端适配等知识。

笔试编程题写不出来怎么办

笔试编程一般都不是一道题,有的有三个。做不出来不见得一点机会也没有,主要看编程思路,算法逻辑是否正确。同样编出来也不代表没问题了,也要看编程规范,算法选择等是否合适。有时即使编出来也不见得能通过所有测试例可能只是部分通过。

程序员面试注意事项

1.技术

虽然你说不说,还是提一下吧,就是做题做题,我去找工作的时候都不知道的,笔试题很烂,如果你的笔试题答得不怎么好,那么如果你的项目经验有不错的地方,人家也会要你,我在一次面试中就是这样子,老总跟我说我的答题不好,因为我写了个禁忌算法,别人最后也要我了,虽然最后没有去。

2.非技术

我在现在去的那家公司,是不需要笔试的,直接现场两轮面试,之后有通知直接录取,最后被录用了。针对你的“对公司有什么了解”,我当时回答:没有。事后想起来有点惭愧,那时面试官听到我这么答,就直接跟我说了公司的规模、从事方向等,另外也说了不希望员工频繁跳槽。个人感觉她还在观察我的表达和面部表情。像这种问题我个人经过这几次面试主要有这么种体会,问一些公司的情况就可以了,最好不要问待遇,因为他们在录用你的时候会说待遇的,当他们回答你的时候,你要表现得很有兴趣就可以了,给他们感觉你很喜欢这份工作。

分几部分内容的话,我感觉每个公司都不一样。最好能够跟他们闲聊,我面试的时候就跟面试官聊了一下,聊到什么大海污染之类的,我家住在哪里等等,个人感觉重要的就是你的态度吧。如果表达能力行的话,基本上我感觉除了技术的问题就不是问题。我就怕他们问太多技术,因为跨行,不一定什么都懂,相反我的表达能力不错,除了技术的一概都不是问题。

27038