京东前端笔试(附答案解答)

引言

我目前本科大四,正在春招找前端,有大厂内推的友友可以聊一聊,球球给孩子的机会吧。

我整理了一份10w+字的前端技术文档:https://qx8wba2yxsl.feishu.cn/docx/Vb5Zdq7CGoPAsZxMLztc53E1n0k?from=from_copylink
,对前端感兴趣的同学可以查看、参与构建。

问题

选择题

  1. 棵含有6个节点完全二叉树的中序遍历为[n,y,m,x,p,],那么这棵树的前序遍历结果为?(D

    A、[n,m,p,y,z,x]

    B、[x,y,m,n,z,p]

    C、[n,m,y,p,z,x]

    D、[x,y,n,m,z,p]

    中序遍历:左中右;前序遍历:中左右

  2. 下列对 js 箭头函数描述错误的是?(D

    A、箭头函数不能用作函数生成器

    B、箭头函数没有原型属性

    C、箭头函数不可以使用闭包

    D、箭头函数内部的 this 是词法作用域(块级作用域),由上下文确定

    箭头函数不能保存 this,this 指向的是最近的父级

  3. 关于元素的隐藏,下列说法正确的是?(C

    A、给元素设置样式 visibility: hidden 并绑定 click 事件,点击元素时事件触发

    无法触发事件

    B、给元素设置样式 dispaly: none,该元素将从 DOM 树中被移除

    DOM 树中还有,但是不渲染

    C、给元素设置样式 opacity: 0 并绑定 cick 事件,点击元素时事件触发

    opacity 只是设置透明度,元素还是会占据原来的位置

    D、给元素设置样式 visibility: hidden,该元素在父容器中不占用空间位置

    仍然会占

  4. HITML5新增了在客户端本地存储的方式,其中有一种仅在当前网页会话下有效,关闭页面或浏览器后就会被清除的存储方式是?(D

    A、Application Cache

    B、localStorage

    C、cookie

    D、sessionStorage

  5. 请问以下JS代码最终输出的结果是?(D

    Promise.resolve(1).then(2).then((res) => {return 3}).catch((err) => {return 4}).then(Promise.resolve(5)).then(console.log)
    

    A、5

    B、1

    C、4

    D、3

    `` 会被转换为 then(() => return Promise5)

    then(Promise.resolve(5))
    // 的转化过程
    then(() => {
    return Promise.resolve(5)
    })
    // ===>
    then(() => {
    return new Promise().then(() => {return 5;
    })
    })
    
  6. 请问以下 JS 代码最终输出的结果是?(B

    function func1() { }
    function func2() { }
    func1.prototype = func2.prototype = {}
    const son = new func1();
    console.log(son instanceof func1, son instanceof func2);
    

    A、false、true

    B、true、true

    instanceof 是通过原型链判断的

    C、false、false

    D、true、false

  7. 执行以下程序,现要给div盒子添加动画move,以下选项中,添加无效的一项是?(D

    div {width: 200px;height: 200px;
    }@keyframes move {0% {background-color: transparent;}100% {background-color: red;}
    }<div></div>
    

    A、animation: move 2s infinite alternate;

    B、animation: move 2s linear;

    C、animation: move 2s 2s infinite;

    D、animation: move ease alternate;

  8. 现用广度优先搜索算法(BFS)来遍历一个无向图G,则在最坏情况下,BFS算法实现的空间复杂度为?(D

    注: 存储图所需的空间不计入算法实现的空间复杂度计算,V 表示顶点个数,E 表示边数

    A、O(|E+V|)

    B、O(1)

    C、O(|E|)

    D、O(|V|)

    BFS算法使用一个队列来保存待访问的节点,以及一个标记数组来记录已经访问过的节点。在最坏情况下,所有的节点都需要被访问一次,并且所有的节点都会进入队列。

    假设图G有n个顶点,则队列的大小最大为n。此外,标记数组需要占用与顶点数量相同的空间,因为每个顶点都需要被标记为已访问或未访问。

    因此,BFS算法的空间复杂度为O(n),即O(|V|)。

  9. 下列关于哈希查找说法错误的是?(A

    A、无论冲突是否发生,哈希表的查找不需要关键字比较

    在哈希表中,查找是通过计算关键字的哈希值来确定存储位置的,然后在该位置上进行查找。

    如果没有冲突发生,即没有两个关键字计算出相同的哈希值,那么确实不需要进行关键字比较,可以直接找到对应的元素。

    然而,在哈希表中,冲突是可能发生的,即两个不同的关键字可能计算出相同的哈希值。

    B、哈希表最适合的求解问题是查找与给定值相等的记录

    C、哈希查找不适合范围查找

    D、哈希查找不适合同样的关键字对应多条记录的情况

  10. 下列哪个不是函数的属性?(A

    A、length

    B、arguments

    arguments 是函数对象的一个内部属性,它是一个类数组对象,包含了函数被调用时传递的参数

    C、callee

    callee 是 arguments 对象的一个属性,它指向当前正在执行的函数自身

    D、caller

    caller 是函数对象的一个属性,它返回一个对当前函数的调用者的引用(如果有的话)

  11. 执行以下程序,当在son盒子中继续添加CSS样式:left:50%;right:50%; 时,son盒子将会?(C

    .father {position: relative;width: 200px;height: 200px;
    }.son {position: absolute;width: 100px;height: 100px;
    }<div class="father"><div <div class="son"></div>
    </div>
    

    A、右移50px

    B、左移50px

    C、右移100px

    % 是相对包含块的大小。

    D、左移100px

  12. 某主机的 IP 地址为 212.212.77.55,子网掩码为 255.255.252.0。若该主机向其所在子网发送广播分组,则目的地址可以是?(D

    A、212.212.80.255

    B、212.212.76.255

    C、212.212.77.255

    D、212.212.79.255

    根据给定的IP地址和子网掩码,我们可以确定与该主机在同一个子网的广播地址。子网掩码为255.255.252.0,这意味着前22位是网络位,后10位是主机位。

    在这种情况下,主机所在子网的地址范围是从212.212.76.0到212.212.79.255。因此,该子网的广播地址应该是这个范围内的最大地址减去所有主机位为0时的值,即212.212.79.255。

    因此,该主机向其所在子网发送广播分组时,目的地址应该是212.212.79.255,因此正确答案是选项D。

    E、212.212.78.255

  13. TCP建立连接是通过三次握手实现的,断开连接是通过四次挥手实现的,下面说法错误的是?(C

    A、在三次握手过程中,可能会发生SYN攻击

    B、采用三次挥手断开连接的话可能会出现已失效的连接请求报文段

    C、TCP使用累积确认,当收到失序报文时会直接丢弃该报文,并发送几余ACK指明期望收到的下一个报文

    不会直接丢弃,相反,会缓存以便在后续接收到其他失序报文段时能够进行重组和正确地交付数据。

    D、四次挥手断开连接可以保证A发送的最后一个确认报文段到达B

  14. 对于MySQL的触发器,以下说法不正确的是?(D

    A、触发器是在check约束之前执行的

    B、可以触发触发器的操作是:insert、 delete、select、update

    这里持疑问,搜到的资料说 select 无法触发触发器。

    C、一个表可以定义多个触发器

    D、触发器可以用在所在数据库以外的对象上

    触发器只能用于所在数据库中的表上,不能用于数据库以外的对象上。

  15. 下面关于InnoDB 存储引擎和 MYISAM 存储引警正确的是?(B

    A、InnoDB 不支持外键,而 MyISAM 支持外键

    InnoDB 支持外键,而 MyISAM 不支持外键。

    B、InnoDB 支持行级锁和表级锁,而 MyISAM 支持表级锁

    C、InnoDB 不支持事务,而 MyISAM 支持事务

    InnoDB 支持事务,而 MyISAM 不支持事务。InnoDB 的事务支持是其主要的优点之一,允许进行复杂的更新操作,同时保持数据的一致性和完整性。

    D、InnoDB 支持全文索引,而 MyISAM 不支持全文索引

    两者都支持全文索引,但是在早期版本的 MySQL 中,只有 MyISAM 支持全文索引。从 MySQL 5.6 版本开始,InnoDB 也开始支持全文索引。

  16. 在高度为10(只有根节点的高度为0)的堆中,元素个数最少和最多分别是?(B

    A、512 1024

    B、1024 2047

    C、512 513

    D、1023 1024

  17. 以下代码的输出结果是?(C

    var foo = {bar: function () {return this.baz},baz: 1
    }
    console.log(typeof (f = foo.bar)());
    

    A、String

    B、Number

    C、undefined

    普通函数可以保存 this。

    D、object

  18. 关于 CSS 选择器的使用,以下说法错误的是?(B)

    A、a:active 必须被置于 a:hover 之后才能生效

    B、使用相邻兄弟选择器 h1 + pmargin-top:50px;,既可以修改前邻兄弟节点的样式,也可以修改后邻兄弟节点的样式

    只能后邻

    C、a:hover 必须被置于 a:link 和 a:visited 之后才能生效

    D、使用:nth-child(0n+1)/:first-child/:nth-child(1)三个选择器的效果是一样的,都是选中第一个子元素

  19. 以下JavaScript 代码执行后的输出结果是?(C

    console.log('start')
    setTimeout(function () {console.log('timerover')
    }, 0)
    Promise.resolve().then(function () {console.log('promisel')
    }).then(function () {console.log('promise2')
    })
    console.log('end')
    

    A、“start” “end” “timeover” “promise1” “promise2”

    B、“start” “timeover” “end” “promise1” “promise2”

    C、“start” “end” “promise1” “promise2” “timeover”

    D、“start” “timeover” “promise1” “promise2” “end”

  20. 执行下列语句后,变量name的值为?(B

    let name = '1'
    new Promise(function (resolve, reject) {resolve();reject();
    }).then(function () {name = '2';
    }).catch(function () {name = '3'
    })
    name = '4'
    

    A、1

    B、2

    C、3

    D、4

算法

1. alt

2. alt

3. alt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/698209.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是汽车抛负载Load dump

1.什么是抛负载 抛负载&#xff0c;英文为Load dump&#xff0c;是指断开电源与负载的瞬间&#xff0c;由于负载突变而引起电源电压急剧变化。在汽车电子领域&#xff0c;抛负载是指在蓄电池充电时&#xff0c;断开发电机与蓄电池的连接而引起发电机输出大电压尖峰&#xff0c…

【Linux】一站式教会:Ubuntu(无UI界面)使用apache-jmeter进行压测

&#x1f3e1;浩泽学编程&#xff1a;个人主页 &#x1f525; 推荐专栏&#xff1a;《深入浅出SpringBoot》《java对AI的调用开发》 《RabbitMQ》《Spring》《SpringMVC》 &#x1f6f8;学无止境&#xff0c;不骄不躁&#xff0c;知行合一 文章目录 前言一、Java…

EventStream获得数据流,前端配置获得推送的流

如上图所示&#xff0c;请求一个接口&#xff0c;接口以数据流的方式向客户端推送数据&#xff0c;默认需要消息收集一条&#xff0c;在原来的基础上追加&#xff0c;在create-react-app生成的工程中&#xff0c;如果代理使用了中间件http-proxy-middleware&#xff0c;同时dev…

数据库面试题汇总,助你轻松应对面试!

考虑到最近有些小伙伴准备跳槽&#xff0c;所以更新一些数据库相关的面试题&#xff0c;希望能帮到大家&#xff01; 一 请写出创建表的基本语法结构&#xff1f; 创建表的基本语法结构如下&#xff1a; CREATE TABLE IF NOT EXISTS 表名(字段名1 字段类型,字段名2 字段类型 …

在springboot中调用openai Api并实现流式响应

之前在《在springboot项目中调用openai API及我遇到的问题》这篇博客中&#xff0c;我实现了在springboot中调用openai接口&#xff0c;但是在这里的返回的信息是一次性全部返回的&#xff0c;如果返回的文字比较多&#xff0c;我们可能需要等很久。 所以需要考虑将请求接口响应…

QT_day4

1.思维导图 2. 输入闹钟时间格式是小时:分钟 widget.cpp #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);id startTimer(1000);flag1;speecher new QTextT…

nginx 配置文件详细介绍

一&#xff0c; nginx 配置文件架构 上一篇 已对 main 全局配置做了详细介绍 本章对剩下的配置文件部分做介绍 二&#xff0c;event 设置 &#xff08;一&#xff09;event 相关的配置文件为 配置工作模式以及连接数 &#xff08;二&#xff09;具体表现 1&#xff…

c语言经典测试题3

1.题1 int a 248, b 4; int const *c 21; const int *d &a; int *const e &b; int const * const f &a; 请问下列表达式哪些会被编译器禁止&#xff1f; A: *c 32; B: *d 43 C: e&a D: f0x321f 我们来分析一下&#xff1a;const用来修饰变量是想其…

鸿蒙自定义侧滑菜单布局(DrawerLayout)

前言 为了实现安卓中的侧滑菜单布局效果&#xff0c;通过查找鸿蒙的布局控件&#xff0c;发现SideBarContainer控件有点像&#xff0c;但是使用中发现并不是很符合我们的UI交互效果&#xff0c;因此我在鸿蒙中通过自定义布局的方式实现&#xff0c;本文主要介绍该自定义控件如…

kubernetes负载均衡部署

目录 1.新master节点的搭建 对master02进行初始化配置&#xff08;192.168.88.31&#xff09; 将master01的配置移植到master02 修改master02配置文件 2.负载均衡的部署 两台负载均衡器配置nginx 部署keepalived服务 所有node节点操作 总结 实验准备&#xff1a; k8s…

Vue3的computed计算属性和watch监视(四)

一、computed计算属性 <template><div class"person">姓:<input type"text" v-model"first_name"><br>名:<input type"text" v-model"last_name"><br><button click"changeFu…

Linux:Jenkins用户权限和管理

1.下载插件 由于Jenkins的默认权限管理并不是很精细所以我们安装一个插件进行权限的一个管理 插件名称为&#xff1a;Role-based Authorization Strategy 安装完插件我们再去配置一下 进入全局安全配置 选择这个Role-Based Strategy策略然后保存 2.创建角色 我们这里主要使…

【C++私房菜】面向对象中的多重继承以及菱形继承

文章目录 一、多重继承1、多重继承概念2、派生类构造函数和析构函数 二、菱形继承和虚继承2、虚继承后的构造函数和析构函数 三、has-a 与 is-a 一、多重继承 1、多重继承概念 **多重继承&#xff08;multiple inheritance&#xff09;**是指从多个直接基类中产生派生类的能力…

MybatisPlus--03--IService、ServiceImpl

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 1. IService接口1.1 IService、ServiceImpl 接口的使用第一步&#xff1a;实现basemapper接口第二步&#xff1a;编写service类第三步&#xff1a;编写serviceImpl第…

开发Chrome插件,background.js中log打印未出现在控制台

不同于内容脚本&#xff08;通常命名content.js&#xff09;&#xff0c;在后台脚本&#xff08;通常命名background.js或service-worker.js&#xff09;中console.log并不会在控制台中直接显示。 要查看后台脚本上下文的正确控制台&#xff0c;执行如下步骤&#xff1a; 访问…

蓝桥杯备赛系列——倒计时50天!

蓝桥杯备赛系列 倒计时50天&#xff01; 前缀和和差分 知识点 **前缀和数组&#xff1a;**假设原数组用a[i]表示&#xff0c;前缀和数组用sum[i]表示&#xff0c;那么sum[i]表示的是原数组前i项之和&#xff0c;注意一般用前缀和数组时&#xff0c;原数组a[i]的有效下标是从…

【Python笔记-设计模式】工厂模式

一、说明 (一) 解决问题 提供了一种方式&#xff0c;在不指定具体类将要创建的情况下&#xff0c;将类的实例化操作延迟到子类中完成。可以实现客户端代码与具体类实现之间的解耦&#xff0c;使得系统更加灵活、可扩展和可维护。 (二) 使用场景 希望复用现有对象来节省系统…

Maven depoly:Skipping artifact deployment

问题描述&#xff1a; 使用IDEA执行mvn depoly将本地开发的模块发布到Maven私服时&#xff0c;一直提示&#xff1a;Skipping artifact deployment&#xff0c;自动跳过了depoly部署阶段。 问题分析 Maven构建生命周期中的每一个阶段都是由对应的maven插件执行具体工作的。既然…

使用IDEA创建spring boot web项目并测试运行

文章目录 准备工作构建项目1、通过Maven Archetype构建一个webapp项目2、添加 Spring Boot 所需依赖3、创建配置文件4、创建启动类5、创建web api 接口6、测试web api接口 准备工作 idea下载地址&#xff1a; https://www.jetbrains.com/idea/download/?sectionwindows java下…

关于torch.cuda.is_available() 返回False 详细说明及解决

一 cuda 环境检测失败 cuda 环境检测代码&#xff1a; import torchprint(torch.__version__) print(torch.cuda.is_available()) print(torch.version.cuda) cuda 环境检测代码执行结果如下图&#xff1a; 关键代码print(torch.cuda.is_available()) 返回 False 通常表示当…