2024年前端组第一次机试题目

2024年前端组第一次机试题目

说在前面的一些悄悄话

欢迎大家来参加前端机试, 相信能来参加的你一定是对自己负责的好同学! 请发挥你的聪明才智, 展示你的近期所学, 全力完成下面的题目吧!

⚠️: 不能在搜索引擎上直接搜索题目, 例如: xxxx效果如何实现? 如有发现, 学长学姐会对你扣分哦

其中有两道题是附加题 大家记得注意看
附加题23必做,24选做!!!

但是有什么突然忘记了可以呼叫老东西 老东西会根据情况进行一些提示

1.神奇的小房子🏠

伟大的夏大建筑师现在想实现一个小房子 但是夏总想让你帮他来完成捏

效果图如下:

house

PS: 别问为什么没有窗户😡!

2.码农? 果农!

如下有一个水果的表格需要你去完成

果农果农

注意事项⚠️

  • 在鼠标触控表格是有颜色的变化 颜色你自己随意喽 别太丑就好喽

效果如下:

3.弹窗领域大神

超级无敌的学长让你帮他实现一个弹窗特效

弹窗

要求💊

  • 触碰到按钮时候是有颜色变化的
  • 退出弹窗时候也是有颜色变化的

4.超级无敌的托马斯大回旋

这个logo是哥们mini项目的logo,也是出自于本人的设计组朋友(快来加入木犀,以后和朋友一起美美写项目
鼠标移入时顺时针旋转360度,移出时逆时针旋转360度

大旋转

5.万恶的小红点😡

给html代码,要求html代码不变(可以自行添加class属性)还原一下效果,方法不限,并在消息通知的图标上添加小红点,里面数字不限,但要求数字在原点正中央

小红点

6.神奇的按钮

完成回到顶部按钮以及页脚的填充

要求:

1:页脚居中且不随页面滑动

2:回到顶部:图片随页面滑动,距离顶部和底部底部某一距离时不再随页面滑动

nav

7.经典的响应式布局

实现经典开局

效果如下

daohanglan

注意注意 接下来为附加题

24级的童鞋可以根据自己前面的情况进行选择是否做答

23级的同学接着加油喽😁

8.超级无敌的打字机特效(附加题)

打字动画是很常见的一种动画,实现以下打字动画的效果,要求时隔0.5s出现一个字,全部字打完后清空,循环打印

打字机

提示:光标可用右边框实现

9.算法 启动!!!(附加题)

请你编写一个函数,它接收一个函数数组 [f1, f2, f3,…, fn] ,并返回一个新的函数 fn ,它是函数数组的 复合函数

[f(x), g(x), h(x)]复合函数fn(x) = f(g(h(x)))

一个空函数列表的 复合函数恒等函数 f(x) = x

你可以假设数组中的每个函数接受一个整型参数作为输入,并返回一个整型作为输出。

示例 1:

1
2
3
4
5
6
7
8
输入:functions = [x => x + 1, x => x * x, x => 2 * x], x = 4
输出:65
解释:
从右向左计算......
Starting with x = 4.
2 * (4) = 8
(8) * (8) = 64
(64) + 1 = 65

示例 2:

1
2
3
4
5
6
7
输入:functions = [x => 10 * x, x => 10 * x, x => 10 * x], x = 1
输出:1000
解释:
从右向左计算......
10 * (1) = 10
10 * (10) = 100
10 * (100) = 1000

示例 3:

1
2
3
4
输入:functions = [], x = 42
输出:42
解释:
空函数列表的复合函数就是恒等函数

提示:

  • -1000 <= x <= 1000
  • 0 <= functions.length <= 1000
  • 所有函数都接受并返回一个整型

目前已经有的结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
* @param {Function[]} functions
* @return {Function}
*/
var compose = function(functions) {

return function(x) {

}
};

/**
* const fn = compose([x => x + 1, x => 2 * x])
* fn(4) // 9
*/

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。

请你将两个数相加,并以相同形式返回一个表示和的链表。

你可以假设除了数字 0 之外,这两个数都不会以 0 开头。

目前已经有的结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
* Definition for singly-linked list.
* function ListNode(val, next) {
* this.val = (val===undefined ? 0 : val)
* this.next = (next===undefined ? null : next)
* }
*/
/**
* @param {ListNode} l1
* @param {ListNode} l2
* @return {ListNode}
*/
var addTwoNumbers = function(l1, l2) {

};

示例1

img

1
2
3
输入:l1 = [2,4,3], l2 = [5,6,4]
输出:[7,0,8]
解释:342 + 465 = 807.

示例 2:

1
2
输入:l1 = [0], l2 = [0]
输出:[0]

示例 3:

1
2
输入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9]
输出:[8,9,9,9,0,0,0,1]

提示:

  • 每个链表中的节点数在范围 [1, 100]
  • 0 <= Node.val <= 9
  • 题目数据保证列表表示的数字不含前导零

2024年前端组第一次机试题目
http://example.com/2024/10/02/2024前端第一次机试/
Author
Shanyujia
Posted on
October 2, 2024
Licensed under