快来每日上分,2021前端面试题10道(附答案与解析)

举报
北极光之夜。 发表于 2021/07/30 22:38:44 2021/07/30
【摘要】 一.先言:目标:成为offer收割机之拖拉分机范围:HTML、CSS、JavaScript题型:单选、多选、编程数目:10本次难度(5星满星):⭐⭐答案:答案与解析是我自己查询与思考后书写的,仅供参考。北极光之夜。auroras.blog.csdn.net 二.题目(答案在最后):1.问一份标准的HTML文档有哪几个必须的HTML标签?【多选】A. <html>B. <head>C. <t...

一.先言:

目标: 成为offer收割机之拖拉分机
范围: HTML、CSS、JavaScript
题型: 单选、多选、编程
数目: 10
本次难度(5星满星): ⭐⭐
答案: 答案与解析是我自己查询与思考后书写的,仅供参考。
北极光之夜。 auroras.blog.csdn.net

二.题目(答案在最后):

1.问一份标准的HTML文档有哪几个必须的HTML标签?【多选】

A. <html>
B. <head>
C. <title>
D. <body>

2.<input>元素的type属性的取值可以是( )【多选】

A. image
B. checkbox
C. button
D. select

3.下列哪个操作是W3C标准定义的阻止事件向父容器传递:【单选】

A. e.preventDefault()
B. e.cancelBubble=true
C. e.stopPropagation()
D. e.stopImmediatePropagation()

4.下列哪种选择器不是css3才定义的:【单选】

A. :enabled
B. :checked
C. :before
D. :only-child

5.以下那些是css属性position可以设置的值:【多选】

A. fixed
B. relative
C. absolute
D. inherit

6.以下哪些Array对象的方法不会更改原有数组?【多选】

A. concat()
B. splice()
C. map()
D. sort()

7.JavaScript定义var a=“40”,var b=7,则执行a%b会得到()。【单选】

A. 5
B. "5"
C. undefined
D. null

8.以下运行结果:

for(var i = 0; i < 10; i++) {
    setTimeout(function() {
        console.log(i);
    }, 1000);
}
A. 0--9
B. 10个10
C. 10个9
D. 无限循环

9.以下运行结果:

var user = {
 count : 1,
 getCount: function(){
  return this.count;
 }
}
var func = user.getCount
console.log(func())
A. this.count
B. 1
C. 报错
D. undefined

10.移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果返回新的数组:

function remove(arr, item) {
  。。。
}

三.答案与解析:

1. 选ABCD,注意看问的是标准的HTML文档。

2. 选ABC,没有select,有以下:

button checkbox file hidden image password radio reset submit text

3. 选C, preventDefault()是取消事件默认行为;stopImmediatePropagation() 取消事件冒泡同时阻止当前节点上的事件处理程序被调用;cancelBubble()是取消事件冒泡,不符合 W3C 标准,适用于 IE;stopPropagation()阻止事件冒泡行为 , 符合 W3C 标准;

4.选C,:before选择器早在CSS 2.1版本就定义了。

5.ABCD,有 绝对absolute,固定fixed,相对relative,继承父元素inherit,默认static,粘性sticky…略。

6.选AC,concat()方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。sort() 方法用于对数组的元素进行排序,肯定改变了。splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目,也改了。

7.选A,js是弱语言类型。在进行算术运算时,只有做+号,数字隐式转换成字符串。其余的运算符号是字符串隐式转换成数字。

8.选B,JavaScript的任务分为同步任务和异步任务,同步任务放在主线程,形成一个执行栈;异步任务放在任务队列,只有主线程空了才会去读取任务队列的任务。setTimeout是异步操作,每次遇到它不是先运行,而是先压入执行栈。等i执行完for循环,setTimeout才开始执行,此时的i已经是10了,就打印了10个10。

9.选D。函数调用时,this才会发生绑定,而且是谁调用this,this就指向谁。这里func调用了它,所以指向func,而func是全局环境中的,所以this指向window,而count是一个局部变量,所以undefined。

10.如下,这个比较简单就不解释了:

function remove(arr, item) {
   let arr2 = arr.filter(i=>{
       return i!=item;
   })
   return arr2;
}

总结:

每日一练,做人没有梦想,那和咸鱼有什么分别~

在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。